我正在设法在Woocommerce分页中创建view按钮。所有其他来源似乎都过时了,而且不起作用。目前发现一个来源是最近的,但仍然不起作用。
所以现在我有一个:
if( isset( $_GET['showall'] ) ){
add_filter( 'loop_shop_per_page', create_function( '$cols', 'return -1;' ) );
}
else {
add_filter( 'loop_shop_per_page', create_function( '$cols', 'return 25;' ) );
}并为pagination.php中的HTML链接添加了以下内容:
echo '<li><a href="';
echo curPageURL();
echo '?showall=1">All</a></li>'; html链接正在显示,但它似乎没有全部运行函数视图。
我是不是做错了什么?还是这种方法过时了?
我们非常感谢你的帮助。
发布于 2017-09-26 00:11:46
在某些情况下,可能仍然支持create_function函数,但它是非常不受欢迎的。它实际上是少数几个功能之一,当启用它时,您的网站会打开许多黑客漏洞,这就是为什么在PHP的后期版本中,它已经被废弃了。我敢打赌您的主机已经禁用了它,因此您所拥有的代码可能无法工作。
做一个快速的谷歌,我找到了关于如何执行你所说的这里的文档。现在,根据您到目前为止所做的一些修改,我将尝试如下:
add_filter('loop_shop_per_page', 'my_per_page_filter', 100);
function my_per_page_filter($cols) {
return isset($_GET['showall']) ? -1 : $cols;
}在上面的代码中,我使用了一些代码魔术来表示如果设置了$_GET['showall'],然后返回-1 $cols中的常规列数。我还将过滤器的优先级设置为100,因此希望它能在其他过滤器之后运行,如果您发现这段代码不工作,那么尝试一个更高的值,比如99999。
希望这能有所帮助!
柯达
https://stackoverflow.com/questions/46411761
复制相似问题