使用Zend studio+WAMP来调试Wordpress后台的PHP程序的一些非常关键的信息(原创)
一、Zend studio代码格式化快捷键:选中代码,Ctrl+Shift+F( 注意,在英文输入发状态下使用!) 。
Zend studio实用快捷键 :
http://www.zendstudio.net/zend-studio-tutorial/zendstudio-shortcuts/
二、使用Dreamweaver格式化HTML代码:
http://www.ludou.org/use-dreamweaver-to-fomat-html-code.html
三、最好PHP开发工具Zend Studio 9.0.2的安装和使用,可以导入wordpress代码,形成工程。
原文出处:http://blog.csdn.net/reille/article/details/7420450
四、把远程服务器端的wordpress程序移到本地来调试。
由于在本地调试方便点,而且调试好了以后还要把代码上传回远程服务器端,所以最好数据库的配置跟远程服务器端的配置一样,下面的做法就是将本地的数据库配置跟远程服务器的一样。
步骤:
1. 在本地数据库中新建一个跟远程服务器端中与wp-config.php文件里面信息一样的数据库名字、用户名和密码。
2. 把远程的mysql数据库备份一份,然后复制到本地,还原到新建的数据库中。
3. 还原的时候可能会出现以下问题:
Fatal error: Maximum execution time of 30 seconds exceeded in
\wordpress\wp-includes\class-http.php on line 902
问题解决就很简单了,修改php.ini最大执行时间参数即可:
max_execution_time = 30(默认值) –> 改为180或者更大
memory_limit = 512M,最好也把mysql的内存也改一下,原来是(128MB)的,改成了512M之后快一点,就能在备份、还原大数据时候更加快速。当然这些值根据你的硬件来自由设置的,设置大点也没问题。
upload_max_filesize = 10M这个是控制mysql数据库导入文件大小,你需要还原的数据库很大的时候需要把这个值设置大点。
4. 把数据库里面的后缀为options的数据表里面的siteurl字段的数据改为http://localhost/(没改以前原来为你远程服务器自己所绑定的自己的域名,比如:www.XXX.com,改了之后就能正常访问本地的了)
5. 把远程的程序打包一份,然后复制到本地,并解压到apache的www目录(我这里是用wamp)。
6. 如果原来网站设置了.htaccess文件,那最好把这个文件改掉,比如你原来如果通过设置这个.htaccess文件来进行301重定向那就一定要把这个.htaccess文件里面的东西全部删除(删除前最好备份一份.htaccess文件),然后改为下面的再保存起来:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
7. 还有,注意留意还需更改wordpress后台常规选项那里的WordPress 地址(URL)和站点地址(URL)。
8. Apache安装的路径,在其根目录下“conf文件夹”中有一个文件叫“httpd.conf”,用记事本将它打开,按“ctrl+F”键,弹出查找窗口,输入“#LoadModule rewrite_module modules/mod_rewrite.so”,如果能找到的话,把前面的#删除,这个#号表示注释,也就是没有开启,我们去掉之后也就开启了“mod_rewrite”这一模块,如果找不到,再尝试输入“LoadModule rewrite_module modules/mod_rewrite.so”,看能否找到,如果能找到,说明这个模块已经开启。
先试试看能否正常打开,如果不能正常打开,继续在httpd.conf文档里面查找:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
将上面的改为下面的:
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
再尝试一下能否正常打开,一般到这个时候就能正常打开了。
9. Warning: Creating default object from empty value in
\wordpress\wp-admin\includes\theme.php on line 23
弄好之后登陆主页进去没问题,但是进入wordpress后台之后就出现问题了:
首先找到对应文件对应行,改成:
if ( ! isset( $themes[$current_theme] ) ) {
delete_option( 'current_theme' );
$current_theme = get_current_theme();
}
$ct = new stdClass(); //原先有问题,添加本行即可
$ct->name = $current_theme;
10. Creating default object from empty value in.... \wp-includes\user.php on line 660
没登陆wordpress后台之前没什么问题,登陆之后会出现上面这个问题,搞了很久,终于找到了解决方案:
http://www.tiandiyoyo.com/2013/03/warning-creating-default-object-from-empty-value/
搜索资料得到原因是array里的object没有被初始化。解决办法是在这之前添加一行代码:
$blogs[ $blog_id ] = new stdClass();
首先找到对应文件对应行,改成:
if ( !is_multisite() ) {
$blog_id = get_current_blog_id();
$blogs = array();
$blogs[ $blog_id ] = new stdClass();//原先有问题,添加本行即可
$blogs[ $blog_id ]->userblog_id = $blog_id;
$blogs[ $blog_id ]->blogname = get_option('blogname');
$blogs[ $blog_id ]->domain = '';
$blogs[ $blog_id ]->path = '';
$blogs[ $blog_id ]->site_id = 1;
$blogs[ $blog_id ]->siteurl = get_option('siteurl');
return $blogs;
}
11. Warning: Creating default object from empty value in
D:\wamp\www\lyyy_wp_pj\wp-includes\class-wp-admin-bar.php on line 167
首先找到对应文件对应行,改成:
function add_node( $parent_id, &$menu, $child ) {
foreach( $menu as $id => $menu_item ) {
if ( $parent_id == $id ) {
+ $menu->{$parent_id}['children'] = (object) $menu->{$parent_id}['children'];//原先有问题,添加本行即可
$menu->{$parent_id}['children']->{$child['id']} = $child;
$child = null;
return true;
(以上三个问题解决方案:https://gist.github.com/eko/1073475)
12. Fatal error: Maximum execution time of 300 seconds exceeded in
D:\wamp\www\lyyy_wp_pj\wp-includes\shortcodes.php on line 176
max_execution_time
13. Warning: Creating default object from empty value in
/home/wordpress/www/wp-admin/includes/post.php on line 428
首先根据上面的路径找到出问题的代码行,然后添加下面这句:
$post = new StdClass();//原先有问题,添加本行即可
14. 还有个小问题就是链入链接那里的rss链接也要改一下,把链入进来的你的域名改成http://localhost。
15. 当然站点地址和wordpress地址也还是要改为http://localhost的,否则还是原来你的域名。
16. 无法打开更改过的固定连接的话,查看apache的rewrite_module模块是否开启,没开启的话要先打开,然后重新启动wamp服务。
刷新一遍之后全部正常了,即可开始编辑文件,改后之后直接上传到远程服务器端就行了,能够同步你的代码,方便而且快捷。
五、Zend studio调试wordpress源码:
http://stackoverflow.com/questions/6887746/zend-studio-with-wampserver //按这个做没问题建立好Zend studio工程之后直接导入wordpress工程文件进去或者直接复制到Zend studio工程的文件夹内再在Zend studio软件目录里面按F5刷新一遍即可。
http://www.yeetrack.com/?p=120
http://blog.sina.com.cn/s/blog_59a79e8b0100kpqs.html
六、手工升级wordpress的方法步骤:
http://jingyan.baidu.com/article/363872ec892d6c6e4ba16fc9.html
WordPress升级建议
http://www.wopus.org/wordpress-basic/basic-use/2130.html
七、亮友医药官网关键信息:
亮友医药官网的自定义固定连接:/%category%/%post_id%.html
八、Wordpress插件介绍:
1. BackUpWordPress这个插件既可以备份数据库,又可以备份网站上的文件,备份的内容都可以发到指定的Email地址,功能非常强大。
下载地址:http://wordpress.org/plugins/backupwordpress/,备份文件自动发送到gmail。
九、JavaScript学习:
在js(jquery)中获得文本框焦点和失去焦点的方法
详细出处参考:http://www.jb51.net/article/32423.htm
CSS分别设置Input样式(按input类型)
十、:
原文出处:http://www.cnblogs.com/icgg/articles/1647068.html
<input type="text" /> 文本框
<input type="password" /> 密码框
<input type="submit" /> 提交按钮
<input type="reset" /> 重置按钮
<input type="radio" /> 单选框
<input type="checkbox" /> 复选框
<input type="button" /> 普通按钮
<input type="file" /> 文件选择控件
<input type="hidden" /> 隐藏框
<input type="image" /> 图片按钮
十一、JS代码学习:
if(document.activeElement.id == this.id) 判断当前输入框(或者控件)是否获得焦点。
使用Zend studio+WAMP来调试Wordpress后台的PHP程序的一些非常关键的信息(原创)的更多相关文章
- 使用zend studio配置Xdebug调试PHP教程
这里看过上面的文章后写一下自己的想法. 最近安装了zend studio 10.5,下载了破解文件.开始是下载了10.0的版本,但是注册码不正确.所以只能安装最新的10.5了. 接下来进行PHP代码调 ...
- Zend Studio配合Xdebug调试
以下配置均在windows环境下. 1.下载xdebug 使用phpinfo()查看当前php的版本信息: 到xdebug下载页面下载对应的xdebug版本: 将解压出的php_xdebug-2. ...
- zend studio 使用断点调试
1, 下载 Xdebug 1 # 下载地址 2 # http://xdebug.org/download.php 3 4 # 寻找和自己所安装的 php 版本对应的 Xdebug 下载 5 # 对 ...
- zend studio 添加xdebug调试php代码
1.Eclipse下对于大部分语言都提供了调试器接口,自然的对于PHP,Zend已经集成了XDebug调试器,找到Zend中的Preferences->PHP->Debug, 将调试器设置 ...
- 【Zend Studio】在Zend Studio中调试ThinkPhp框架
在这篇文章中,笔者将会展示如何在Zend Studio下进行断点调试Think PHP.环境:windows 7.wampServer 3.1.4 64bit.zend studio 13.6.1Th ...
- WordPress后台的文章、分类,媒体,页面,评论,链接等所有信息中显示ID并将ID设置为第一列
WordPress后台默认是不显示文章.分类等信息ID的,查看起来非常不方便,不知道Wp团队出于什么原因默认不显示这个但可以使用Simply Show IDs插件来实现 不使用插件,其他网友的实现: ...
- Zend Studio下的PHP代码调试
问题:Zend Studio无法调试php代码 安装Zend Debugger 下载 到http://downloads.zend.com/pdt/server-debugger下载最新的debugg ...
- 开发环境wamp3.06 + Zend studio 12 调试配置
<?php $fileName = "php大师.test.php"; //补充程序,显示文件名(不包括扩展名) $start = strrpos($fileName, &q ...
- Zend Studio XDebug调试配置
最近在配置zend studio时找了些资料,发现了这个,说的比较详细 搭建Zend Studio 10.5 和XDebug 环境,试图进行 Drupal的调试, 经历了一些困难,但是最终解决了问题, ...
随机推荐
- SQL SERVER大话存储结构(5)_SQL SERVER 事务日志解析
本系列上一篇博文链接:SQL SERVER大话存储结构(4)_复合索引与包含索引 1 基本介绍 每个数据库都具有事务日志,用于记录所有事物以及每个事物对数据库所作的操作. 日志的记录 ...
- Jenkins之pipeline流水线配置
使用gitlab监听事件一旦git push自动部署 使用构建后操作 配置完用户构建前一步会自动构建下一个项目 pipeline插件 新建视图 点击run运行
- HOJ Recoup Traveling Expenses(最长递减子序列变形)
A person wants to travel around some places. The welfare in his company can cover some of the airfar ...
- javascript 执行环境,作用域链和闭包
首先看下这条语句: (function($) {…})(jQuery): 1.原理: function(arg){…}这就定义了一个匿名函数,参数为arg 而调用函数时,是在函数后面写上括号和实参的, ...
- toml-lang - Tom's Obvious, Minimal Language
Tom's Obvious, Minimal Languagehttps://github.com/toml-lang/toml
- UEM用户行为了如指掌!
“千呼万唤始出来”,万众期待的UEM正式与宝宝们见面啦~~~ 今天很多人来问小编,Web咋不见了,表急,Web并没有消失,而是重磅升级为UEM啦!!! 什么是UEM呢?UEM全称User Experi ...
- (转)《SSO CAS单点系列》之 15分钟让你了解SSO技术到底是个什么鬼!
Web应用系统的演化总是从简单到复杂,从单功能到多功能模块再到多子系统方向发展. .当前的大中型Web互联网应用基本都是多系统组成的应用群,由多个web系统协同为用户提供服务. 多系统应用群,必然意味 ...
- C++ string 类
标准c++中string类函数介绍 注意不是CString之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够.字符串长度等等,而且作为 ...
- MySQL中特有的函数CONV函数
CONV函数:用于对数字进行转换,比如将十进制的数字转化成二进制,参数格式convert(N,frombse,tobase) 将数字N从frombase进制转化成tobase进制,并且以字符串的格式返 ...
- (1)了解cocostudio基础
操作界面 Cocos Studio的界面主要分为菜单栏.工具栏.对象面板.资源面板.画布面板.属性面板.动画面板.输出窗口.状态栏九部分组成,如下图: 菜单栏 菜单栏为Cocos Studio ...