[英]Disable a theme function in from a child theme functions.php in wordpress
我在wordpress中遇到了我的主題問題,它顯示了自己的og:我的主題的元描述,所以它由於所有的一個seo插件而被復制。
我想禁用主題中的那些,但我不知道如何,所以我設法在php文件上找到觸發此功能在網站上顯示的功能,但我不知道如何從功能中禁用它。 PHP或我的孩子主題,所以它在更新時不會過分嚴重。 有問題的功能如下
// Open Graph Meta
function aurum_wp_head_open_graph_meta() {
global $post;
// Only show if open graph meta is allowed
if ( ! apply_filters( 'aurum_open_graph_meta', true ) ) {
return;
}
// Do not show open graph meta on single posts
if ( ! is_singular() ) {
return;
}
$image = '';
if ( has_post_thumbnail( $post->ID ) ) {
$featured_image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'original' );
$image = esc_attr( $featured_image[0] );
}
?>
<meta property="og:type" content="article"/>
<meta property="og:title" content="<?php echo esc_attr( get_the_title() ); ?>"/>
<meta property="og:url" content="<?php echo esc_url( get_permalink() ); ?>"/>
<meta property="og:site_name" content="<?php echo esc_attr( get_bloginfo( 'name' ) ); ?>"/>
<meta property="og:description" content="<?php echo esc_attr( get_the_excerpt() ); ?>"/>
<?php if ( '' != $image ) : ?>
<meta property="og:image" content="<?php echo $image; ?>"/>
<?php endif;
}
add_action( 'wp_head', 'aurum_wp_head_open_graph_meta', 5 );
非常感謝提前。
這個功能實際上有一種內置的短路和早期返回方式。 如果將false
值傳遞給過濾器aurum_open_graph_meta
如果在創建任何輸出之前將返回。
add_filter( 'aurum_open_graph_meta', '__return_false' );
你可以在這里閱讀特殊的__return_false()
函數: https : //codex.wordpress.org/Function_Reference/_return_false
如果此函數沒有早期返回標志,則停止執行的另一種方法是刪除該函數創建的操作。 這將是一種更通用的方法,可以應用於WordPress中任何位置注冊的大多數操作。
添加您自己的操作, 該操作在您要刪除的操作添加之后但在執行之前運行 。
在這種情況下,您可以使用init
鈎子來實現這一點。 在你的動作函數中,使用你想要刪除的細節或鈎子調用remove_action()
。
add_action( 'init', 'remove_my_action' );
function remove_my_action(){
remove_action( 'wp_head', 'aurum_wp_head_open_graph_meta', 5 );
}
請注意,操作需要在添加的同一$priority
上刪除(在本例中為“5”)。 嘗試將上面的代碼添加到您的子主題的functions.php文件中,看看它是否刪除了該操作。
如果您只支持php> 5.3,那么您可以使用匿名函數清理該代碼:
add_action( 'init', function() {
remove_action( 'wp_head', 'aurum_wp_head_open_graph_meta', 5 );
}
關於在WordPress中添加/刪除操作的一些額外閱讀: https : //codex.wordpress.org/Function_Reference/remove_action
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.