替换Get_Term_link生成的部分url

时间:2016-09-15 作者:aryan

有没有办法在get\\u term\\u link()提供的url中编辑文本

我要替换此文本listing-category/ 在由get\\u term\\u link()生成的所有链接中

到目前为止,我一直在使用下面的代码在任何我想要的地方手动完成它,但现在我意识到它将是有效的。

$term_link= str_replace(\'listing-category/\', \'jobs/?fwp_cate=\', get_term_link( $term ));
$term_link= rtrim($term_link, \'/\');
那么,有没有办法在所有get\\u term\\u链接()中应用上述代码呢

请帮我解决这个问题

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

是的,有一个钩子“term\\u link”,可以用于此目的。在这里您可以找到文档。https://codex.wordpress.org/Plugin_API/Filter_Reference/term_link

所以解决方案是这样的

add_filter(\'term_link\', \'term_link_filter\', 10, 3);
function term_link_filter( $url, $term, $taxonomy ) {

  $url= str_replace(\'listing-category/\', \'jobs/?fwp_cate=\', $url);
  $url= rtrim($url, \'/\');

    return $url . "#results";

}

相关推荐

Apply_Filters()对所需的参数进行切片

我正在尝试向WooCommerce订单中的每个退款行添加一个按钮(其功能超出了这个问题的范围,足以说明它需要退款id作为参数)。我发现这些行是在woocommerce\\includes\\admin\\meta Box\\views\\html订单退款中创建的。无法重写的php。然而,有一项行动:do_action( \'woocommerce_admin_order_item_values\', null, $refund, $refund->get_id() ); 这似乎非常适合我的