当前位置: 首页 > 知识库问答 >
问题:

CodeIgniter中的Wordpress

阮才俊
2023-03-14

我遵循了这个指南:http://philpalmieri.com/2009/06/codeigniter-and-wordpress-play-well-together/

基本上就是说,安装wordpress,让它工作,然后替换索引。带有CodeIgniter的php文件,然后在启动CodeIgniter之前的文件底部,需要word press的wp加载文件

很好。

但是现在,我的$u会话不起作用。我已经将CodeIgniter设置为使用数据库会话,并记录会话值,但它仍然不起作用。我不能登录我的CodeIgniter系统管理面板,我不能做很多需要会话的事情,因为会话不起作用。英雄联盟

如何解决这个问题?

共有2个答案

陈飞语
2023-03-14

这里有一个关于WordPress如何解除会话变量的解释,以及一个可能的解决方案。不幸的是,它似乎需要修改核心文件——在wp_unregister_GLOBALS中似乎没有任何有用的钩子。

濮翰学
2023-03-14

我做了以下工作来实现这一点(我在Wordpress目录中的一个单独目录中有一个CodeIgniter应用程序)——我显然不喜欢它,因为我不得不修改Wordpress中的一个核心文件。

首先,我将我的Code Igniter cookie名称添加到wp-包含/load.php中的$no_unset数组中。

    $no_unset = array( 'GLOBALS', '_GET', '_POST', '_COOKIE', '_REQUEST', '_SERVER', '_ENV', '_FILES', 'table_prefix','ci_session' );

其次,我发现Wordpress的add_magic_quotes函数破坏了$COOKIE全局。这导致CodeIgniter在每次页面加载或重定向时重新创建cookie,从而中断任何连续性。所以,我在wp includes中注释了这一行。负载php(第545行附近)

//$_COOKIE = add_magic_quotes( $_COOKIE );

接下来,为了使该函数对所有其他与Wordpress相关的COOKIE保持得体,我创建了一个array\u walk函数来循环$\u COOKIE全局,并将add\u magic\u引号应用于wp includes/load中除我之外的所有COOKIE。php函数

/**
* Applies Magic Quotes to the $_COOKIE global but ignores Codeigniter's Cookie
* @param  string $value Value passed by array_walk function
* @param  string $key   Key passed by array_walk function
*/
function ci_ignore_magic_quotes($value,$key)
{
    if($key != "ci_session")
    {
        stripslashes_deep($value);
    }
}

//Put this line in place of the commented out line above...
array_walk($_COOKIE, 'ci_ignore_magic_quotes');

在我这样做之后,我不再有多个cookie存储在我的ci_sessions表和会话被成功保留。

我希望这能有所帮助!

 类似资料:
  • 我有一个与Codeigniter网站建设,我需要有一个博客。它应该是WordPress,所以我决定在我的并在myweb中安装WordPress。com/blog 它工作完美。 现在,我需要改变我的主题页眉和页脚,从我已经在我的网页。 我怎么做? 我的视图位于,但显然,我不能像这样在模板/标题中加载它。php 如果我没有错,我应该在在我的模板文件夹中。所以,问题是,我应该对其进行哪些更改或添加??

  • 问题内容: 在Codeigniter框架中生成报告的最简单方法是什么?有没有可用的库来执行此任务?除了绘制图表外,还有哪些其他资源可以执行此操作。 问题答案: 我自己找到了一个不错的解决方案。如果您想以csv格式生成报告,可以使用codeigniter轻松进行。您的模型功能 现在在控制器中 不需要外部,可在codeigntier中使用所有功能。干杯! 如果要编写xml文件,也很容易。 只需使用db

  • 我想在ci 3.03应用程序中使用restful: > 我找到了这本tutplus教程 我下载了

  • 问题内容: 这个问题已经在这里有了答案 : 在同一网页上显示两个表的数据 (1个答案) 7年前关闭。 我在CodeIgniter中使用联接查询,但无法使其正常工作。它仅显示一个表数据,而不显示其他表数据。我是CodeIgniter的新手,无法解决此问题。请别人帮我。提前谢谢。 看法 控制器 模型 编辑 的结果 是一个如下数组: 表结构 证书 cid(PRIMARY),姓名,second_name,

  • 我正在做一个项目,其中我的代码点火器放在wordpress主文件夹内,下面是我项目的结构。 codeigniter_folder有codeigniter文件。因为我在codeigniter中使用会话,我想在wordpress中访问该会话。但是当我在codeigniter中回声session_id()时,它会给我不同的值,当我在wordpress中回声session_id()时,它会给我不同的会话标

  • 安装CodeIgniter非常容易。 只需按照以下步骤操作 - Step-1 - 从CodeIgniter链接下载CodeIgniter 遗产和最新版本有两种不同的选择。 名称本身是自我描述性的。 旧版本的版本低于2.x,最新版本为3.0版本。 我们也可以使用GitHub并获取所有最新的脚本.. Step-2 - 解压缩文件夹。 Step-3 - 将所有文件和文件夹上传到您的服务器。 Step-4