我对Wordpress和Codeigniter集成的URL有一些问题,因为我想避免WP和CI site_url之间的数据冲突。
这是关于CI的代码:
的config.php
$config['base_url'] = 'http://www.mydomain.com';
my_helper.php
add_filter('site_url', 'ci_site_url', 1);
function ci_site_url()
{
include(APPPATH.'/config/config.php');
return $config['base_url'];
}
当我使用
时,它工作正常并显示http://www.domain.com<?php
echo site_url();
?>
当我使用site_url('admin / xxx')时,我想要http://www.domain.com/index.php/admin/xxx;
我一直在寻找答案,但我找不到,所以我要感谢任何帮助: - )
答案 0 :(得分:2)
安装wordpress和codeigniter只是小菜一碟。你需要做以下事 我假设您需要在Codeigniter中使用wordpress,所以这是您可以做到的。
wordpress目录中的创建一个名为myci的文件夹
wordpress/
/myci
现在把codeigniter包放在myci中。接下来,您需要将此语句添加到index.php
myci/
/system
/application
/index.php
require_once('../wp-load.php');
现在您需要像这样扩展site_url
和base_url
if (!function_exists('ci_site_url')) {
function ci_site_url($uri = '')
{
$CI =& get_instance();
return $CI->config->site_url($uri);
}
}
if (!function_exists('ci_base_url')) {
function ci_base_url($uri = '')
{
$CI =& get_instance();
return $CI->config->base_url($uri);
}
}
使用方法:
现在您可以像这样访问它。希望它有所帮助
http://www.domain.com/myci/index.php/controllername/method
注意index.php之前的文件夹名称
答案 1 :(得分:0)
@raheel shan 在哪里添加:
if (!function_exists('ci_site_url')) {
function ci_site_url($uri = '')
{
$CI =& get_instance();
return $CI->config->site_url($uri);
}
}
if (!function_exists('ci_base_url')) {
function ci_base_url($uri = '')
{
$CI =& get_instance();
return $CI->config->base_url($uri);
}
}