我正在使用uncode主题,我有一个页面标题显示'Archive:Portfolio'
我想从该标题中删除“存档:”位。
在源代码中它看起来像这样:
<h1 class="header-title h1"><span>Archives: Projects</span></h1>
我尝试使用Yoast SEO插件从所有页面标题中删除存档,但它仍在显示。
有没有办法用javascript删除该单词,也许有人知道吗?
谢谢!
答案 0 :(得分:0)
我在通过javascript删除它时要小心。在我看来,在代码执行中的某处添加一段文本,然后在客户端删除它就像"contrived complexity"一样。
查看wordpress template hierarchy,然后手动搜索呈现Archives:
文字字符串的模板文件。
我从archive.php
开始,然后通过其他archive-*.php
页面,然后到taxonomy.php
category.php
,等等。
如果您在命令行中感到舒服,您可能还会考虑使用字符串:grep -r /path/to/wp/theme "Archive:"
并对结果进行筛选,以便在其中一行上找到模板文件。
但是如果你坚持通过javascript删除字符串,你可以尝试通过<body>
中的函数在functions.php
的底部放弃这样的内容:
function remove_archive_text_via_js() {
if (is_archive()) { ?>
<script type="text/javascript">
var archiveHeaders = document.getElementsByClassName('header-title');
for (i = 0, headerCount = archiveHeaders.length; i < headerCount; i++) {
var replacedText = archiveHeaders[i].textContent.replace('Archives: ', '');
archiveHeaders[i].textContent = replacedText;
}
</script>
<?php }
}
add_action('wp_footer', 'remove_archive_text_via_js');
答案 1 :(得分:0)
var elem = document.getElementsByClassName('header-title h1');
var innerSpan = elem[0].getElementsByTagName('span');
innerSpan[0].innerHTML = innerSpan[0].innerHTML.replace('Archives: ', 'jsfiddle');
jsfiddle:https://jsfiddle.net/orcadj3u/
答案 2 :(得分:0)
$(function() {
$( "h1 span" ).each(function( index ) {
var newtext = $(this).text().replace("Archives: ", " ");
$(this).html(newtext);
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<h1 class="header-title h1"><span>Archives: Projects</span></h1><br>
<h1 class="header-title h1"><span>Archives: Solutions</span></h1><br>
<h1 class="header-title h1"><span>Archives: Yozgat</span></h1><br>
<h1 class="header-title h1"><span>Archives: Turkey</span></h1><br>
&#13;