如何重写子主题中的函数.php?

时间:2016-01-09 作者:ReynierPM

我有一个主题,我需要在functions.php 文件我知道这里的最佳做法是在儿童主题中放置一个自定义functions.php. 现在,这是原始文件的一部分:

function mytheme_setup() {
    ...
    add_image_size( \'mytheme-l-thumbs\' , 750 , 423 , true);
    add_image_size( \'mytheme-m-thumbs\' , 555 , 313 , true);
    add_image_size( \'mytheme-s-thumbs\' , 450 , 254 , true);
    add_image_size( \'mytheme-square-thumbs\' , 750 , 750 , true);
    add_image_size( \'mytheme-nocrop-thumbs\' , 750 , 1500 , false);

}

add_action( \'after_setup_theme\', \'mytheme_setup\' );
我想覆盖每个add_image_size 按集合crop 在我的孩子主题上出错。我尝试了复制(&A);将函数粘贴到子主题上,但最终出现以下错误:

无法在/themes/mytheme/functions中重新声明mytheme\\u setup()(以前在/themes/mytheme-child/functions.php:11中声明)。php在线88

我怎么能做到?

1 个回复
最合适的回答,由SO网友:Pieter Goosen 整理而成

当函数被钩住时,很容易在子主题中更改它。你需要做的是

删除原来的回拨功能

将函数复制到子主题并重命名。

根据需要进行自定义

重新连接回拨功能

您可以尝试以下方法:

// Remove the callback function from the hook
remove_action( \'after_setup_theme\', \'mytheme_setup\' );

// Copy the function, rename and do what you need
function my_new_callback()
{
    // Modify what you need
}

// Rehook your custom callback
add_action( \'after_setup_theme\', \'my_new_callback\' );

相关推荐

如何在Functions.php中链接style.css

我是WordPress的新手;我刚开始学习WordPress。我想把风格联系起来。函数中的css。php,但我无法解决这里可能存在的问题。谁能给我指出正确的方向吗?指数php<?php get_header(); ?> <?php if ( have_posts() ) { while ( have_posts() ) { the_post();