有没有办法在不依赖插件(或完整路径)的情况下显示WordPress页面的链接?

时间:2011-05-22 作者:janoChen

假设我要添加此链接:http://localhost/taiwantalk2/user-login/这是一个模板为page user-login.php:

<?php

/**
 * Template Name: bbPress - User Login
 *
 * @package bbPress
 * @subpackage Theme
 */

// No logged in users
bbp_logged_in_redirect();

// Begin Template
get_header(); ?>
我过去只是粘贴站点的url(使用template\\u目录)加上slug(/用户登录)。问题是我必须坚持使用相同的slug(/用户登录)。

还有其他选择吗?

2 个回复
最合适的回答,由SO网友:supajb 整理而成

据我所知,你想要一个指向你的页面的URL,即使你更改了页面的slug,它也能正常工作?

您可以通过链接到default permalink 例如,对于该特定页面http://localhost/taiwantalk2/?page_id=139.

即使永久链接已更新,此URL也始终有效。WordPress为您处理重定向。

SO网友:maryisdead

我不太明白你想要实现什么。是否要创建指向使用登录模板的页面的链接?

如果这是您想要的,您可以这样查询数据库:

SELECT p.ID FROM posts p
LEFT JOIN postmeta pm ON pm.post_id = p.ID
WHERE
    p.post_status = \'publish\'
    AND
    pm.meta_key = \'_wp_page_template\'
    AND
    pm.meta_value = \'user-login.php\'
LIMIT 1;
使用$wpdb. 这当然取决于这样一个事实,即只有一个页面使用该模板。然后,您可以将生成的id用于get_permalink().

结束

相关推荐

curl problem or permalinks

我刚刚配置了我的VPS,我使用的是Centos,一切都很好,但如果我将永久链接设置为自定义结构,然后接受主页,没有帖子出现,它会显示404页,我想这是因为我没有启用curl,但我不知道我的php在哪里。我的centos中的ini文件?好的,我的卷曲被启用了,我检查过了phpinfo(); 这里是URLhttp://74.117.158.182/info.php但如果我在我的wordpress中设置了永久链接,那么接受主页,所有都会给我404页,你可以在这个URL上查看http://mbas.co.in如果