使用URL中的查询字符串在页面上显示内容

时间:2013-08-23 作者:user3515

我想在我的页面上说点什么,根据那个人是从哪一页来的。我可以将指向该页面的链接设置为:

www.example.com/page?parameter=myparameter
是否有一种方法可以访问该参数,以便将其显示在页面上,我的内容中的某个位置?

3 个回复
SO网友:Ethan O\'Sullivan

根据OP在其问题中的回答:

在您的帮助和google的帮助下,我编写了一个返回url参数值的短代码。这是:

//THIS IS A CUSTOM SHORTCODE TO DISPLAY A PARAMETER FROM THE URL
function URLParam( $atts ) {  
    extract( shortcode_atts( array(
        \'param\' => \'param\',
    ), $atts ) );
    return $_GET[$param];  
}
add_shortcode(\'URLParam\', \'URLParam\'); 
我使用这样的短代码来获取trip_type 从我的URL:

[URLParam param=\'trip_type\']

SO网友:Dan

您可以使用PHP会话,在查询对象中查找请求,或者在url中使用$\\u GET,但这不是用于敏感信息。。。

像这样的东西;

从URL中获取行程名称

$tripname = $_GET[\'tripname\'];

在你的标题中使用它;

if(isset($tripname)) echo \'<h1>Plan Your Trip To \' .$tripname. \'</h1>\';

SO网友:WordPress Plugineer

这里有另一个很好的方法来实现这一点。这将不需要短代码,并将自动更新您创建的每个页面,其中有参数“trip”存在

1)导航到主题文件夹并打开功能。php(如果缺少,也可以创建它)添加以下代码并保存:

<?php 
    add_filter( \'the_content\', \'my_trip_filter\' );

    function my_trip_filter( $content ) {
        if ( isset($_REQUEST[\'trip\']) && is_single() ) {
            $content = "<h1>Fill out this form to register for the " . $_REQUEST[\'trip\'] . " trip</h1>" . $content;
        }

        return $content;

    }
?>
每次使用函数打印博客信息时,此代码都会使用\\u content过滤器覆盖。它检测请求的页面是否是单个页面/帖子,而不是存档。可以向其添加其他逻辑或覆盖。只要确保您返回$content,您想要的任何消息都会返回到屏幕上

享受吧!

结束

相关推荐

从图像路径中删除‘wp-Content/Themes/Themename/’

我目前正在将一个基于其他CMS的旧网站移动到一个新服务器上,使用WordPress。然而,这个网站在Google上排名很好,我必须保留所有的链接结构,包括来自图片的链接结构。因此,在旧CMS中,图像链接如下:http://www.domain-name.de/images/image1.jpg 现在,他们是这样的:http://www.domain-name.de/wp-content/themes/theme-name/images/image1.jpg 但它们必须与第一个示例中的一