【问题标题】:Custom URL on a single page in WordpressWordpress 中单个页面上的自定义 URL
【发布时间】:2013-12-16 18:25:42
【问题描述】:

我正在尝试弄清楚如何为 Wordpress 上的一页创建自定义 URL。这里的答案可能指向正确的方向,但我不确定如何实现它。 How can I change the URL for a single page in Wordpress?

我希望在 wordpress 中创建一个页面,例如,该页面的默认 URL 是 http://wordpress/?page_id=772
我想将该 URL 更改为以下

http://wordpress/share_this.php?pid=rk_379061

URL 必须采用该格式,因为 url 是由 3rd 方软件生成并嵌入到电子邮件中的。

所以我在想是否有办法将page_id=772 更改为share_this.php,然后允许文件以某种方式使用参数 pid=rk_379061。

我查看了我的 .htacess 文件,它只包含以下内容: # BEGIN WordPress # END WordPress

我真的没有其他地方可看。

任何想法。并提前感谢

【问题讨论】:

    标签: wordpress .htaccess custom-url


    【解决方案1】:

    您的意思是这样的吗(必须在您的# BEGIN WordPress 行上方)

    RewriteEngine On
    RewriteRule ^share_this\.php$ /?page=772 [L,QSA]
    

    这将获取请求/share_this.php?pid=rk_379061并将其重写为:/?page_id=772&pid=rk_379061,以便可以访问pid参数。

    【讨论】:

    • 不幸的是,这给了我一个内部服务器错误,但感觉它正朝着正确的方向发展......
    • 我能问一下 [L, QSA] 是什么意思吗?
    • @LindaKeating L 标志表示停止为当前迭代重写,QSA 表示将查询字符串附加到末尾。确保您已打开 mod_rewrite,否则请检查您的错误日志以了解您收到 500 错误的原因
    【解决方案2】:

    share_this.php 文件添加到使用$_GET['pid'] 的Wordpress 根目录,然后用它做任何你需要做的事情。

    例子:

    // wordpress/share_this.php
    
    <?php
    
    $pid = $_GET['pid'];
    if( $pid == "rk_379061" )
    {
        header( "Location: /?page_id=772" );
    }
    else
    {
        header( "Location: /" );
    }
    
    ?>
    

    【讨论】:

      猜你喜欢
      • 2011-06-28
      • 1970-01-01
      • 2014-05-30
      • 2016-09-25
      • 1970-01-01
      • 1970-01-01
      • 2016-07-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多