Git doesn't detect changes in WordPress - wordpress

Me and my friend started developing a web site using a WordPress theme. I uploaded the source code on git hub and started doing changes on the website using the admin dashboard. But whenever git status command is entered in the bash, It says working directory is clean and no changes. Any idea why this is happening?

git tracks changes of the source code (or, generally, any files) which lie in the folder where the repository is located. But when you change something in WordPress or other CMS, these changes are typically recorded into database, not filesystem. Only files uploaded by users typically go to the file system, but not configuration settings (like titles and posts).

Related

Can't Upload Images or Plugins via Wordpress Admin

I have a website that I just transferred from one server to another. I did this by copying all the files via FTP from the old server to my computer and then to the new server. I changed the URL in Settings to the new url and I downloaded a copy of the database. I then uploaded the database to the new server and changed all the database info in the wp-config file. Afterwards I used Velvet Blues Update URLs to make sure all the URLs have been changed in the database.
After doing all the the website is working fine. I could update my plugins and my WordPress core files that needed updated.
The problem is now I can't upload a plugin from my computer or any media files like images. When uploading an image, I get this message:
“image.jpg” has failed to upload.
Unable to create directory uploads/2017/03. Is its parent directory writable by the server?
I checked and this directory is already on the server. In FTP I changed the folder permissions to all be set to 775.
I then tried to change the folder structure for media files to not be broken into month/date folders and I get this message:
“image.jpg” has failed to upload.
Unable to create directory uploads. Is its parent directory writable by the server?
I know this directory exists and is set to 775. To double check I also change the wp-content directory to the same permissions.
What am I doing wrong here? Why can't I upload images and plugins via the WordPress backend?
I actually think I figured this out. I went into Settings -> Media and noticed there was a box that says Store Uploads to This Folder and had a folder for the old website. I deleted the information that was in that box and updated the settings and now it works!
I had this exact issue today. After much troubleshooting, I solved this images not uploading issue -- specifically, when I clicked the upload button, no dialog window appeared. As a new WordPress installation, the dashboard was displaying asking if this was going to be a business or personal site. When I clicked I DON'T NEED ANY HELP, then I saw the normal dashboard with WooCommerce module displayed and I was able to upload media files and images from my hard drive.
I'm posting in case this answer can help someone else having this very weird problem. Also, it is possible that a plugin like OpinMonster might be what generated that "business or personal" message.

Fresh Wordpress install on Amazon Linux EC2...can't delete and reinstall

I just recently started by creating a EC2 instance on AWS. I used the Amazon Linux package. I changed the PHP settings to include the ability to upload files larger than 200MB. Got phpinfo.php working. Installed phpMyAdmin. Everything looked good.
Next, I installed Wordpress. It worked great. Then I tried installing a theme. Worked great. Then I started installing some plugins for that theme. Something made the site crash. I tried a few things, but since I couldn't go to the sites Wordpress Admin panel, it seemed hopeless. So I decided to start from scratch. I deleted the html directory (including wp-content) and dropped all the wordpress tables. I moved a fresh copy of Wordpress into the html directory, reconfigured the config.php file, and it recreated the Wordpress tables in the database. Seems to work great. When I try to upload a theme, it says:
Connection Information
To perform the requested action, WordPress needs to access your web server. Please enter your FTP credentials to proceed. If you do not remember your credentials, you should contact your web host.
I noticed that wp-content didn't have a uploads directory, so I created one. That seemed to let me upload the theme, but it showed up as a media file. I moved it to the theme directory and that worked. But when I tried to upload a plugin, I got the same message as a above.
What happened when I deleted everything? Or rather, where was information stored that when I reinstalled Wordpress, it didn't create a uploads directory? I am fine with reinstalling Wordpress from scratch, but I don't want to reinstall the whole LAMP stack or redo the AWS instance. Any thoughts?
The issue is that your web server doesn't have the proper permissions to write to your content directory.
The WordPress Codex has some good info for proper file and directory permissions. Ideally, all files should have 644 permissions, and all directories should be 755 (no higher).
If you're still running into issues adding plugins and updating WordPress, you should heed the advice of the following (so that you don't have to enter FTP details into WordPress each time):
Any file that needs write access from WordPress should be writable by the web server. If your hosting set up requires it, that may mean those files need to be group-owned by the user account used by the web server process.

Using git with Wordpress and multiple people: access all files locally but only edit a subset?

git n00b here. My boss and I are developing a wordpress workflow with git. We'd like to have a copy of all the files on our local machines, but 95% of time we only want to edit a certain theme folder. But our efforts so far haven't yielded a working solution yet. Here's what I've tried:
I originally set my repository to include all wordpress files, so I could always get latest core files from server. Then I discovered files on server were getting overwritten by local copies even if I didn't edit them (eg i do a wordpress update on server and next time I push from local, the old files overwrite the newer ones on server)
So I used git ignore to drill all the way down to my theme folder. Git was still tracking them, so I used rm to stop tracking. But then git deleted all the other files.
How do people here use git with multiple people to update Wordpress? Any perspectives much appreciated - thanks!
You should keep all the files in your git repository, but you should avoid doing any modifications directlry on the server.
Your wordpress update should be done on any of your local checkout of the repository and then pushed on the server via git.
Another possibility will be to commit / push the update changes once they have been done on the server, but I would prefer working locally and then deploying the update.

Mirroring a Wordpress *configuration* between local and remote

Ok, so I'm familiar with creating local Wordpress builds, and have been chugging along happily with the technique outlined in Smashing's MAMP-based article. My question goes a step beyond this.
The article is great for developing generic themes, but when developing sites (not necessarily blogs) based in Wordpress, for me at least, it's a little painful come launch day.
I have to go back in and reconfigure the server's Wordpress to match what I've already done locally. Settings have to be entered again, plugins need be installed again, menus recreated, and css will have to be altered to reference the unique classes/id's Wordpress generates for posts/pages/custom taxonomies…sometimes things are missed in the process. What I want to know is this:
Is there an easy way to automate cloning or mirroring the build on my local machine to the remote server?
Even if you have to just LMGTFY me, that would help. I don't exactly know what I should be searching for. Searches dealing with 'mirroring wordpress configuration' and 'cloning wordpress configuration' returns tutorials on moving content, which I know how to do.
If it helps, I'm running OSX 10.6.8 with xcode dev tools, git, ruby, node, and homebrew. All of my live servers have ssh access as well as ftp, and I build with the most current versions of Wordpress.
Here are some easy steps to follow:
Download and install the WP Migrate DB plugin.
Go to Tools > WP Migrate DB and fill-in the blank fields(New address (URL), New file path and optionally check/uncheck the other options). Click on Export Database and save the export file to your computer.
Make a .zip archive with ALL of your files(the /wp-admin, /wp-content, /wp-includes directories and all files in the root directory).
Upload that file to your production server, where you want your WordPress site to reside.
Go to your cPanel(or use the unzip command through SSH) File Manager(or any other alternative that you might have) and unzip the file that you just uploaded.
If you don't already have a Database set-up on your production server - create one through the hosting control panel(for cPanel, it would be Creating a mySQL database in cPanel, for plesk it would be Plesk 7 Tutorial: Creating a database, for anything else, just google it up, or try your hosting's FAQ). Remember/write-down your Database Name, Database User and Password.
Edit the wp-config.php file and change the values for the DB_NAME, DB_USER, DB_PASSWORD and optionally DB_HOST - but this is usually localhost - if that doesn't work try asking your web host, or if you have phpMyAdmin, log-in to it and look at the very top of the page - in this case the DB_HOST would be localhost.
After you've done all of that, log-in to your DB administration tool(most of the time this would be phpMyAdmin, but it could be something else as well) and upload the database export file that you save to your computer in step 2. Note: If your hosting hasn't provided you with a DB administration tool, I would suggest that you upload the phpMiniAdmin(click on the "Download latest version" link and save the file to your computer) script to your production server. Then go to that script(if your website is located at http://example.com/, go to http://example.com/phpminiadmin.php) and enter your DB details. On top of that page, you will see an import link. Click on it and upload your DB export file. Note 2: phpMiniAdmin doesn't support gzip-compressed files, so if you did check the Compress file with gzip option in step 2, you will have to re-do that step with this option unchecked.
Log-in to your site and go to Settings > Permalinks in order to update your permalink structure.
Check the permissions of the /wp-content/uploads and /wp-content/plugins directories - make sure that you will be able to upload images and plugins without any problems.
That's pretty much it. It might seem like a lot, but I follow this process for almost every site that I upload to production servers and it can take me as less as a bit under 10 minutes to do all of that(considering that I usually use custom MySQL commands, instead of the WP Migrate DB plugin - I should probably start using it :) ). Once you get used to the process and you don't encounter any low-quality web hostings, you should be perfectly fine with these steps.
Note: Since you used ssh as one of your tags, I assume that you usually have ssh access to the production server. If you don't I'm still assuming that you have a cPanel access(if that's not true and you can't unzip files on the server, then upload all files manually via FTP client, instead of doing steps 3 and 4).
I guess the only way is to copy the database or part of it.
What I do is to copy the relevant tables and modify manually the site URLs in table options. There are only 2. There is also a nice plugin velvet-blues-update-urls to modify all links, after the site URLs are set manually to be able to access the backend, in case posts are also copied.
Next, copy all theme directory files to the same directory in the site, assuming you are using the same theme.
Both processes can be automated with a PHP script.
I am not sure this is what you want, but hope this helps.
Not sure that this is exactly what you need, but to move a site you can use the built in Wordpress "export" and "import" options. As far as I remember there was an option when importing to change URL's and the import would change a few things for you.
Even if this does not answer your exact question, hope it helps.

how to setup subversion using svn?

i have a hosting where i put my domains files. i have one directory called wordpress where i installed a copy of wp. What i am trying to do is to do an SVN checkout on that folder.
but i get: Redirect cycle detected for URL '....
any ideas how to set it up so that i can grab those files on my computer and then checking them in after i make changes?
also, im not looking necessarily for something specific on wordpress, i might want to check out some other files lather on
thanks
You need to make sure that the folder you are trying to "checkout" is an actual SVN repository.
You can do so with the svnadmin create command. More info available here

Resources