加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

如何在主题functions.php中定义和使用辅助函数?

发布时间:2020-12-13 22:51:08 所属栏目:PHP教程 来源:网络整理
导读:如何让以下在Wordress Theme functions.php文件中正常工作? 我还没想出如何在主题的functions.php文件中使top函数可用于bottom函数.我没有抓住如何设置挂钩,以便它们可以一起工作.谢谢. 过滤器/助手/ whateveryoucallit功能: function poohToPee( $pooh_lo
如何让以下在Wordress Theme functions.php文件中正常工作?

我还没想出如何在主题的functions.php文件中使top函数可用于bottom函数.我没有抓住如何设置挂钩,以便它们可以一起工作.谢谢.

过滤器/助手/ whateveryoucallit功能:

function poohToPee( $pooh_log )
{
  switch( $pooh_log )
  {
    case 'gross-poop':
      $pee_equivalent = 'Grossest of Pees';
    break;
    case 'ok-poop':
      $pee_equivalent = 'Bland Snack Pee';
    break;
    case 'shang-tsung-plop':
      $pee-equivalent = 'Random U-Stream';
    break;
  }
  return $pee_equivalent;
}

Ajax处理函数:

function screw_loose()
{
  if( isset($_REQUEST['pooh_log']) )
  {
    echo poohToPee( $_REQUEST['pooh_log'] );
  }
}
add_action('wp_ajax_priv_screw_loose','screw_loose')

解决方法

add_action通常调用你在调用hook时传递的函数.

既然你正在使用某种ajax钩子,你真的可以确保你的函数没有被调用吗?因为它在后台运行,所以它不会回显到屏幕上的任何内容.

通常,您在functions.php中定义的任何函数都可以在主题中使用.

显然通常最好组织并拥有类,在这种情况下,您将方法作为数组传递给钩子,例如add_action(‘admin_init’,array($this,’someFunction’));我刚刚做的add_action将放在类的__construct函数中.

例如,你可以这样做:

class helloWorld
{
    function __construct()
    {
        add_action( 'admin_init',array( $this,'echoItOut' ) );
    }

    function echoItOut()
    {
        echo 'Hello World';
    }
}

$helloWorld = new helloWorld;

或者你也可以这样做:

class helloWorld
{
    function echoItOut()
    {
        echo 'Hello World';
    }
}

$helloWorld = new helloWorld;

add_action( 'admin_init',array( $helloWorld,'echoItOut' ) );

或者干脆:

function echoItOut()
{
    echo 'Hello World';
}

add_action( 'admin_init','echoItOut' );

如果你把我在functions.php文件中提供的任何代码块放到你的仪表板上,你会看到管理栏顶部打印出的“Hello World”很可能(如果仪表板可能会因主题而异)有自定义样式).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读