我正在一个WordPress网站上工作,其中的内容将被替换,每周(任何职位,媒体或文件被从WP环境每周擦除,然后重新填充所有新的内容,等等)。
文章页面的主要特点之一是,我必须从Word文档中直接复制本地URL并粘贴到WordPress文章中。由于原始超链接指向保存在我本地系统中的文件,因此这些超链接在WordPress站点上显然没有正确链接。我为此使用REGEX概念创建了一个小脚本,根据类别自动更改超链接。
这段代码片段保存在我的functions.php文件中(加载本地保存的脚本,该脚本执行实际的链接更改魔术):
Function load_js_assets_Tab2 () {
if( in_category('10')) {
wp_enqueue_script('tab2LinkReplace','https://myserver/wordpress/wp-content/tab2LinkReplace.js', array('jquery'), '', true);
}
}
add_action('wp_enqueue_scripts', 'load_js_assets_Tab2');
问题:
由于某些原因,这个脚本只在我加载的第一篇文章上有效,然后不适用于所有自动加载的文章。无论我先点击哪个文章,脚本都有效,但是当我向下滚动文章时,它不会适用于任何后续的文章。“自动加载下一篇文章”功能内置在我的模板Newsblock(https://newsblocktheme.com/)中。
我假设这与自动加载下一篇文章功能是通过 AJAX 加载完成的这一事实有关,但我不知道如何解决这个问题。
如果任何一个人有任何建议,变通或想法如何处理这一不同...我真的会很感激!
1条答案
按热度按时间bvn4nwqk1#
AJAX 可能是问题所在,超链接修复功能没有被调用。
您可以使用
$(document).bind('ajaxComplete')
在每个AJAX 请求之后执行操作,并且可以使用它作为触发器来重新运行该函数您只需将其包含在
tab2LinkReplace.js
文件中,但我不确定JS是如何工作的,所以我只留下了一些基本的注解