【问题标题】:WordPress Pagination/Infinite Scroll breaking another pluginWordPress分页/无限滚动打破另一个插件
【发布时间】:2017-12-04 23:55:52
【问题描述】:

我已经在我正在使用 WordPress、Thesis 主题和 Beaver6813 等人的插件 Infinite Scroll v2.6.2 开发的网站上实现了无限滚动。

不幸的是,它似乎破坏了另一个插件,Kamal Khan 的 kk Star Ratings v2.6。

我的网站配置为通过设置>阅读>您的最新帖子和我的functions.php文件中的以下代码在主页上显示具有特定类别的帖子:

add_action( 'pre_get_posts', function ( $q )
{
    if (    $q->is_home()
         && $q->is_main_query()
    ) {
        $q->set( 'category_name',  'strip' );
        $q->set( 'posts_per_page', 3 ); 
    }
});

无限滚动正在工作。星级插件在帖子标题和帖子内容之间显示为我想要的。

但是,核心功能——点击星号并对帖子进行评分的能力——仅适用于三个帖子的初始加载。之后延迟加载的所有内容都会显示星数和评分数,但我实际上无法点击星号对帖子进行评分。

这是一个在顶级帖子中工作的示例:working

下面是一个损坏的功能示例:not-working

区别似乎在于样式。

工作的宽度为80%,如下:

<div class="kksr-fuel kksr-star orange" style="width: 80%;"</div>

破碎的宽度为0%:

<div class="kksr-fuel kksr-star yellow" style="width:0%;"</div>

我确实尝试通过我的样式表强制“宽度:80% !重要”。虽然它在视觉上改变了界面,但我仍然无法通过点击保存评分。

虽然我可以看到无法使用的插件,但我假设宽度实际上隐藏了我为帖子评分所需的功能。

我只是不知道如何告诉它关闭它。

我尝试了几个不同的插件并得到了相同的结果。我是新手,但我怀疑我使用无限滚动进行分页的方式会阻止插件完全......我不知道,正在加载,我猜。

我觉得我已经非常接近解决这个问题了……只需要在终点线上轻推一下,拜托!

【问题讨论】:

  • 在 Fiverr 上的某个人的帮助下解决了这个问题。我们添加了一些 JavaScript 并通过 functions.php(或 custom.php,因为它使用 Thesis 主题)将其加入队列。这是代码:'code' jQuery(document).ready(function($){ setInterval(function(){ if($('.home .content > div:last-child').hasClass('lg')) { }else{ $('.home .content > div:last-child').addClass('lg'); $(".kk-star-ratings").kkstarratings(); } }, 2000); } ); '代码'

标签: php wordpress pagination infinite-scroll


【解决方案1】:

这是我之前在评论中提到的修复方法。

下面的代码是由 Fiverr 的某个人提供的。我将它添加到脚本中并将其加入队列。

jQuery(document).ready(function($){
  setInterval(function(){ 
    if(!$('.home .content > div:last-child').hasClass('lg')){
      $('.home .content > div:last-child').addClass('lg');
      $(".kk-star-ratings").kkstarratings();
    }
  }, 2000);
}); 

【讨论】:

    猜你喜欢
    • 2011-05-23
    • 2016-10-10
    • 2015-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多