System Overview Diagram for Wordpress website? - wordpress

I am trying to get my head around the system for a website using a Wordpress theme. I'm particularly confused at where Wordpress fits in, is it in the database, server or is it a standalone?? Here is the diagram I have made so far: Any help would be greatly appreciated.

WordPress is a content management system (CMS). It is built with php code, runs on a HTTP server, connects to a database and renders html/css/javascript to the client.
WordPress usually runs on Apache HTTP server, and connects to a mysql database though it can be configured to run on other HTTP servers and connect to other database servers (like SqlServer).
A WordPress theme is used to define rules of how to render WordPress content (entered through the WordPress admin interface) fetched from the database to the client (read browser) as HTML/CSS/JavaScript/Images. A WordPress theme follows WordPress template hierarchy for rendering different pages (You can learn more about that here: https://developer.wordpress.org/themes/basics/template-hierarchy/)
You can learn more about WordPress site architecture here:
https://codex.wordpress.org/Site_Architecture_1.5

Related

fetching wordpress live data into my local local laravel api

Im using corcel in my laravel local api, I can fetch wordpress data on my local wordpress site. When I try to change the settings to connect to a live wordpress site its not working. My question is, Is it possible? or do I need to make it both live in the same server since the wordpress site it on the shared hosting.
Yes, You have to put on a public server both wordpress and laravel, and connect them.

Website hosted on Wordpress sending request to other servers remotely

I have a WordPress website hosted on Amazon Ubuntu.
Amazon reported that my server is sending a WordPress login attempt requests to other servers on Amazon.
My website is just a landing page with a contact form. How do I prevent such incidents?
You can block external http requests check adding
define( 'WP_HTTP_BLOCK_EXTERNAL', true );
in wp-config.php
Since you have already found a bad curl call in your source, I strongly suggest you check the integrity of your Wordpress installation.
If you have WP CLI available you can do this with the command wp core verify-checksums.
If you don't have WP CLI available you can use this excellent solution by Jan Reilink (either directly or as a starting point for your own code).
Either way you'll get output that tells you whether or not additional files have been modified (you could then restore them from the same WP version source). This will not be a catch-all-method in regards to malware, but I think it can be helpful in your specific situation.
Given that the code that's causing these requests is not part of the Wordpress core the answer to your question is some of the general best security practices for Wordpress:
Keep Wordpress and plugins updated
Use strong passwords for users
Add a captcha and brute force protection to your login page if possible

Client transferred/changed domain names...how do I salvage the WordPress site

So I built this client a WordPress site and after if was completed and paid for he decided he didn't like his domain name. So he logged into HostGator and then bought/transferred to a new domain.
Then a day later he calls and wonders why his page isn't loading. I'm able to go into the FTP and save all the wp-content and every file that was originally there... My question is how do I get the WordPress site I built onto the new domain name?
I've read all kinds of tutorials about how to export/import but they require the site you're transferring from to be live.. I can't log into the wp-admin portion because it looks like the domain does not exist anymore.
I'm definitely not a back-end guy.. I've build a few sites off line with xamp but i have no idea what I'm doing when it comes to trying to salvage this site. Any help?
WordPress is flexible to handle situations like moving to another server. First back up your WordPress directory, images, plugins, and other files on your site as well as the database. The detailed steps on how to do it is well documented in the website https://codex.wordpress.org/Moving_WordPress.

How to proxy a rails app in heroku with a WP blog under same domain

I have this:
A rails app on Heroku that servers mydomain.com
A WP site on another hosting (that I can move to AWS .. or even heroku)
I need that mydomain.com/blog serves the WP installation, I DONT want it to be a subdomain for SEO.
My first idea was setup apache / nginx as reverse proxy on a instance on AWS. However I worried that this setup is not optimal as backends are in different services.
It's possible to setup heroku dyno as a proxy? I understand there is no way to modify the system files on heroku, like create a custom nginx setup to do the proxy. I was wondering if there is some application that works as a proxy and can be installed in heroku, next setup the blog in heroku also.
Or it's a good idea to setup an AWS instance as proxy in the same region that the heroku is (us-west1), and setup the blog also there.
I'm interested in the pros and cons of each solution and what would be the best way to go.
I had tackled the same exact problem with Rails and WP for quite some time.
My configuration and result:
Rails app is hosted on heroku (www.sexycrets.com)
WP Blog is hosted on another server (blog.sexycrets.com)
When the browser requests www.sexycrets.com/blog he receives the same html page that he would have received if browsing blog.sexycrets.com and the url on the browser remains the same
How I achieved it
One solution that does works well for SEO is to use a gem as reverse proxy (I use drewwed/rack-reverse-proxy from Github). You can configure it to intercept the route "/blog" (and "/blog/") so that every time Rails is asked for /blog it loads your WP site with a backend call and returns it to the user. This is a completely transparent operation from the user browser perspective, aside from the delay introduced. The user browser has no way to know that the blog page returned in the response was loaded from another server, the url on the browser remains "www.sexycrets.com/blog".
Pros: SEO requirements are satisfied
Cons: Performance since the reverse proxy is not very performant in terms of delay introduced
Alternative
For sake of completeness the other option I tried was to use an iFrame in a static page hosted on heroku that loads the WP. The problem is that in order for it to work avoiding a circular reference all the links in the WP blog have to point to blog.sexycret.com (not www.sexycrets.com/blog) which partly defeats the SEO purpose.
Pros: Performance is very good since it is not even using Rails: the user browser loads the static /public/blog/index.html page that contains just the iFrame that points to the WP blog
Cons: the links in the blog are not pointing to the main domain but to the 3rd level domain defeating
Hope this helps!

WORDPRESS Trouble with simple non profit theme

I've created a web application based on this free Wordpress Theme:
http://vandelaydesign.com/blog/wp-themes/simple-non-profit/
All ok in localhost environment, but when I uploaded the site on remote (PHP + MySQL + Email active), the admin panel changes, and shows me only a part of whole admin menu.
e.g., admin panel doesn't show me the theme customization page and the slideshow customization page, that instead, in local environment, I have it.
Can you help me??? Thanks!
It might be that the live server is running a different version of PHP, or has config settings that make it different from your local environment.
However, my guess is that you haven't modified the database properly when you transferred it and that is the cause of your problem (I would suggest that it's nothing to do with the theme).
Moving Wordpress databases from your local development environment to live can be a massive pain because Wordpress (and lots of plugin/theme developers) use serialized arrays to store data. So if you do a find-and-replace on the database to replace your old url with the new one, you will disable lots of things like config settings and widgets (text widgets specifically, but there's loads of stuff you end up having to recreate).
Download this file;
http://interconnectit.com/124/search-and-replace-for-wordpress-databases/
and upload it to the server and access it directly in your browser. Run through the quick form and perform a serialized array-friendly find and replace on your database urls. Job done.
Delete the database on the live server and copy the local version of the database again, but this time use the instructions in the thread above to change all the instances of your local url path to the live domain url.

Resources