Php 如何使用条件Wordpress语句将特定代码从页脚传递到特定页面
我最近添加了一个新页面,其中包含一些额外的页脚代码。我在footer.php中添加了它。然而,这些代码出现在我的站点中的所有页面上,因为它位于common footer.php文件中。如何在代码之前的页脚中添加条件语句,使代码仅在我想要的页面中可见?因为当此代码出现在所有页面中时,代码之间存在一些冲突Php 如何使用条件Wordpress语句将特定代码从页脚传递到特定页面,php,wordpress,Php,Wordpress,我最近添加了一个新页面,其中包含一些额外的页脚代码。我在footer.php中添加了它。然而,这些代码出现在我的站点中的所有页面上,因为它位于common footer.php文件中。如何在代码之前的页脚中添加条件语句,使代码仅在我想要的页面中可见?因为当此代码出现在所有页面中时,代码之间存在一些冲突 if( is_page(7656)) { <script> $.noConflict(); jQuery(document).ready(function(){ jQue
if( is_page(7656))
{
<script>
$.noConflict();
jQuery(document).ready(function(){
jQuery(window).scroll(function() {
var docViewTop = jQuery(window).scrollTop();
var docViewBottom = docViewTop + jQuery(window).height();
var customBottom = (jQuery(window).height())/3;
var viewPort = jQuery(window).height();
// console.log('viewPort', jQuery(window).height());
// console.log('customBottom', customBottom);
// console.log('docViewTop', docViewTop);
// console.log('docViewBottom', docViewBottom);
jQuery(".detectActive").each(function() {
var elemTop = jQuery(this).offset().top;
var elemBottom = (elemTop + jQuery(this).height() );
var difference = docViewBottom - elemBottom;
// console.log('elemTop', elemTop);
// console.log('elemBottom', elemBottom);
// console.log('difference', difference);
if(( difference >= customBottom) && (difference <= viewPort)) {
console.log('show now');
let active = jQuery(this).attr("data-active");
jQuery('.commonLink').removeClass("hover_class");
jQuery('#'+active+'-nav').addClass("hover_class");
console.log('visible', active);
}
});
});
});
</script>
}
if(是第7656页)
{
$.noConflict();
jQuery(文档).ready(函数(){
jQuery(窗口).滚动(函数(){
var docViewTop=jQuery(window.scrollTop();
var docViewBottom=docViewTop+jQuery(window).height();
var customBottom=(jQuery(window).height())/3;
var viewPort=jQuery(window).height();
//log('viewPort',jQuery(window.height());
//console.log('customBottom',customBottom);
//console.log('docViewTop',docViewTop);
//console.log('docViewBottom',docViewBottom);
jQuery(“.detectActive”).each(函数(){
var elemTop=jQuery(this).offset().top;
var elemBottom=(elemTop+jQuery(this.height());
var差异=docViewBottom-elemBottom;
//console.log('elemTop',elemTop);
//控制台日志('elemBottom',elemBottom);
//console.log('difference',difference);
如果((差异>=customBottom)&((差异这里是您的代码
添加更多的页面ID到数组中使用comas将它们分开即使你的问题是关于WordPress和PHP条件的使用,你也可以在客户端解决这个问题。WordPress用你当前正在观看的页面或帖子的ID将一个类添加到body标签中,所以你只需要添加if($('body')。hasClass('page-ID-7656'))您的代码,如下所示:
<script>
$.noConflict();
jQuery(document).ready(function(){
if ($('body').hasClass('page-id-7656')) {
// The rest of your code goes here.
}
});
</script>
$.noConflict();
jQuery(文档).ready(函数(){
if($('body').hasClass('page-id-7656')){
//剩下的代码在这里。
}
});
但是,如果您想要一个纯PHP解决方案,@andrey shandrov的答案是可行的。在启动脚本标记之前和之后,您忘记了关闭并重新打开PHP标记。您能告诉我如何If(is_page(7656)){?>
//此处的所有代码都不起作用,我的整个页脚在发布您的代码后不会加载,因为您的代码破坏了页脚
<script>
$.noConflict();
jQuery(document).ready(function(){
if ($('body').hasClass('page-id-7656')) {
// The rest of your code goes here.
}
});
</script>