我目前正在创建一个使用自定义PHP代码的新网站,但我也是从远程wordpress中检索Wordpress帖子。
在我的根文件夹中(如wordpress一样),我有默认的wordpress .htaccess文件:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
我还有一个index.php文件,它给了我WP的帖子:
<?php
// Include the wp-load'er
include('wp/wp-load.php');
// Get the last 10 posts
$recent_posts = wp_get_recent_posts(array(
'numberposts' => 10,
'post_status' => 'publish'
));
...
?>
在我的项目中,我还有其他自定义php 文件,例如 search.php , detail.php 等。
所有Wordpress帖子链接都使用如下标题格式化: www.mywebsite.com/my-post /
问题是,当URL不是.php文件时,如何更改.htaccess文件以便将index.php传递给slug参数? (比如index.php?slug = my-post)
感谢。
答案 0 :(得分:0)
你可以试试这样的东西。 我希望能帮助你。
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/index\.php$
RewriteCond %{QUERY_STRING} ^slug=(.*)$
RewriteRule ^(.*)$ http://www.mywebsite.com/page/%1.html [R=302,L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPres
答案 1 :(得分:0)
解决方案!:
RewriteEngine On
RewriteRule ^(.*)/$ /index.php?slug=$1 [L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPres