gpt4 book ai didi

wordpress - 获取 WordPress 中的当前页面名称

转载 作者:行者123 更新时间:2023-12-02 17:53:16 27 4
gpt4 key购买 nike

在 WordPress header.php 文件中,有没有办法减少这种情况:

<?php if (is_page('about')): ?>
<script type="text/javascript">var page = "about";</script>
<?php endif ?>

<?php if (is_page('contact')): ?>
<script type="text/javascript">var page = "contact";</script>
<?php endif ?>

<?php if (is_page('gallery')): ?>
<script type="text/javascript">var page = "gallery";</script>
<?php endif ?>

<script type="text/javascript">
var page = "<?php echo get_current_page() ?>";
</script>

最佳答案

好的,这里的一个小问题是,如果包含的字符串是帖子标题或帖子标题 ( WordPress Codex ),则 is_page() 函数将返回 TRUE。因此,我将提供这两种解决方案,您可以选择最适合您的一种。

<script type="text/javascript">
<?php $pageDetails = get_page(); ?>
var page_title = "<?php echo str_replace( '"' , '\"' , $pageDetails->post_title ); ?>";
var page_slug = "<?php echo str_replace( '"' , '\"' , $pageDetails->post_name ); ?>";
</script>

我添加了 str_replace() 位,以确保任何包含引号的页面名称都不会破坏您的 Javascript。

并且,根据 David M 的评论进行调整,使用 JSON 使事情变得更安全......

<script type="text/javascript">
<?php $pageDetails = get_page(); ?>
var page_title = <?php echo json_encode( $pageDetails->post_title ); ?>;
var page_slug = <?php echo json_encode( $pageDetails->post_name ); ?>;
</script>

关于wordpress - 获取 WordPress 中的当前页面名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5210382/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com