簡體   English   中英

在functions.php中修改Wordpress插件功能

[英]Modify Wordpress plugin function in functions.php

我需要從正在使用的Wordpress插件中更改函數的值。

如果我在原始插件文件中執行此操作,則可以完美運行,但我希望在functions.php中進行操作,以避免插件更新時出現問題。

我需要更改此:

public static function loop_shop_per_page() {
    return get_option( 'posts_per_page' );
}

變成這個:

public static function loop_shop_per_page() {
    return '-1';
}

我將如何在functions.php中創建過濾器來做到這一點?

如果不更改核心插件代碼,我認為您無法實現所需的功能。

編寫良好的插件通常會在主題開發人員可能需要調整的所有內容上調用apply_filters方法。 因此,插件代碼如下所示:

// Using apply_filters() to allow overriding of values...
public static function loop_shop_per_page() {
    $value = get_option( 'posts_per_page' );
    return apply_filters('filter_loop_shop_per_page', $value);
}

然后,在您的functions.php文件中,您可以通過添加如下過濾器來更改其值:

add_filter('filter_loop_shop_per_page', 'mytheme_loop_shop_per_page');

function mytheme_loop_shop_per_page($value){
    return -1;
}

不幸的是,除非您編輯插件代碼,否則您可能將無法執行所需的操作。 您總是可以在插件中搜索apply_filters以查看是否還有其他可以調整以達到相同結果的功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM