Identifying which files to edit when using php based CMS - php

I'm trying to make some edits to a website. The website is based on a CMS and runs on PHP.
I have some html/css experience and have a thick guide to PHP into book to help me.
Among the many edits I'd like to make to the site which are out of the control from the CMS admin area, I'd like to add a Facebook link in the main nav.
Now, I would normally, if inheriting someone else's simpe HTMl/CSS site just use the inspect element feature in Chrome of FF and then see whereabout to edit the code.
Probably a classic rookie question but how does one do that with PHP? If I right click the nav on my site, how do I know which PHP file to edit? Is there a "best way" here?
Here's the site incidentally if it helps at all. I'd like to add (among many other things) a Facebook icon next to the RSS icon in the main nav. I just don't know which file to edit.
http://tinyurl.com/byal33m

This all depends on which CMS you are using. It's like asking - I have a 'word processor', how do I add an image...
You should read the documentation that comes with the CMS that you are using. It will likely explain where the files are.
Typically, CMSs usually have a core directory with contain the files that make the CMS work itself, which you wont need to edit.
Then there is a themes directory which contains the files that make up the HTML that is actually rendered and supplemented with data from the CMS. In the admin area, it usually tells you which theme you are using and where it is located.
Wordpress is a popular CMS, and their documentation explains the basics: http://codex.wordpress.org/Using_Themes
-- Updated
Question relates to Ushahidi CMS which has documentation indicating theme HTML located in the 'themes' subdirectory.
https://wiki.ushahidi.com/display/WIKI/Themes+-+Developers+Guide#Themes-DevelopersGuide-HowdoIinstallatheme%3F

Related

WordPress Multiple Themes for Single Website

I’ve been experiencing a problem that I was hoping someone could point me in the right direction. In an effort to make my website more mobile friendly, I purchased a mobile responsive theme. While I know I could have created a sub-domain or a directory to house the mobile version of the website, I’ve been attempting to have the original domain http://example.com switch themes based on the user. In other words, for http://example.com, Desktop user views DesktopTheme and Mobile user views MobileTheme. With the Any Mobile Theme Switcher plugin, I was able to accomplish this will little issue. However, for certain pages I would like to be able to display the desktop version to the mobile user. For example, for single posts, I would like the desktop user and the mobile user both to see the DesktopTheme.
Unfortunately, after several hours of searching and experimenting I am not further along than when I started. Using different templates appeared to be an option, but it’s not a true theme switch. When I altered the template files, mobile users received a hybrid version of the site that includes the mobile header and an unstructured version of the desktop version. A similar result was achieved when I simply copied the single.php file from DesktopTheme into the folder for MobileTheme.
Example:
<?php get_header('/var/www/html/wp-content/themes/DesktopTheme/header.php'); ?>
Any ideas?
There is a plugin that you can use for switching themes based on the post type as well as a lot of other conditions:
http://codecanyon.net/item/wordpress-theme-switcher/558740
I'm not aware of any free version that offers the same functionality, but that doesn't mean one doesn't exist.
With that said, I think you should reconsider your approach here. The entire point of responsive design is so you do not have to have separate mobile and desktop sites. I think you should sidestep this entire issue by using the responsive theme everywhere.
Using a single responsive theme is going to make maintenance much easier and give the user a more consistent experience.
Also, get_header is meant to load a header file from the current theme. You can't load components from other themes and expect them to work correctly.

Modifying wordpress to create a customized CMS

I am working on moving a normal HTML website to Wordpress for a client. It's a simple website with a lots of images and HTML text. The idea is that client should be able to modify contents of website through the simple CMS without actually looking into code.
While doing analysis I came across some roadblocks like
Problem: If I want to modify text/ image for Header or footer in wordpress, I will need to do it in PHP code.
Solution: Create a customized header/ footer update tab. Modify database to store these contents and modify PHP code to directly read the data from database.
Problem: Wordpress provides a set of widgets (blogrolls catergories etc.), I need more like Latest News.
Solution: Modify PHP code and datbase, basically create your own widget.
Problem: There are a lot of static HTML pages which are linked from one page to another.
Solution: I don't see any way in wordpress to create static HTML pages which among which we can create links from one to another.
Solution: Create a new interface where user can create HTML pages/ plain text content. This will return a link which can be used to provide hyperlinks in another page.
My query is: Are the solutions mentioned above correct? The problems mentioned look very common, so is there a tried and tested way to solve?
Edit: User (Client) want to use wordpress. Just wanted to make sure here that Solutions I am thinking about are correct. So would like to have suggestion from someone who has already worked on Wordpress and solved the problems like I have mentioned. Do not want to reinvent the wheel.
I've worked a lot on a Wordpress-base white-label CMS, so I think I can help you in some ways.
First of all : always remember the real power of Wordpress is its community and its plugins base (that you can access directly from wordpress admin)
Problem: If I want to modify text/ image for Header or footer in
wordpress, I will need to do it in PHP code. Solution: Create a
customized header/ footer update tab. Modify database to store these
contents and modify PHP code to directly read the data from database.
If you want to have a fully customisable appearance, I suggest you to start from a theme like Consctructor. This is a theme with a whole admin panel for simple appearance editing. The code is far from perfect but this is a good start.
If you just want to manage the content of header / footer, you can do it via Menus / Widgets / Links, but only if your theme is designed for that. For example, a lot of good theme allow you to add widgets in footer, then you can construct your footer with only a few drag-n-drop in the Appearance/Widget menu. For header image, the default theme (Twenty-Twelve) provide an header panel where you can upload a new image.
Problem: Wordpress provides a set of widgets (blogrolls catergories
etc.), I need more like Latest News. Solution: Modify PHP code and
datbase, basically create your own widget.
Yes you can create your own widgets for specific needs, but I suggest you always start from an existing one. There is a lot of plugins providing you dozens of widgets. Explore that before reinventing the wheel.
For your specific case, a 1s google-search returns me this plugin.
Problem: There are a lot of static HTML pages which are linked from
one page to another. Solution: I don't see any way in wordpress to
create static HTML pages which among which we can create links from
one to another. Solution: Create a new interface where user can create
HTML pages/ plain text content. This will return a link which can be
used to provide hyperlinks in another page.
No, use the pages. Wordpress Pages are static content and this is editable, and for each page ou have a permalink. If Pages aren't good for your job, you can consider creating a custom type (or install a plugin that create a custom type).
Wordpress themes can be made to accept images and stuff like that.
The are ample wordpress widgets to do just that. Just be sure to find the right one.
I don't understand this one. You can create any amount of wordpress pages, and to link between them is easy. If you want your files to end in .html, simply enable permalinks and specify that option. It's very easy.
Reinventing the wheel sometimes is good, possibly even good for you (Given patience and time). Nothing is prepackaged to do everything for you, hence these are times when you need a custom build.
Anyways, CMSes don't come as a multipurpose, all-in-one package that solves your programming woes and turns everything into a point-and-click solution. Every CMS is unique, designed to serve a specific purpose. Others general purpose, others for blogs, others for very simple sites.
If you don't find anything native that fits your needs, find the right plugin for the job. If you cannot find anything at all, then might as well build a custom solution, or build on top of an existing resource. Innovate

How to access files on Joomla?

I am in a critical condition. I was paying a developer in India who left the project but now I need to access the php pages.
I have explored the joomla site using the admin login but i can't find how he is displaying the html/php pages.
Please help!
I assume you're looking for the front-end template for the website.
Using FTP or whatever control panel go to the Joomla folder, look for a folder called templates - it should be one of the folders in there.
To check what the name of the current template is, go to the admin panel and look in the template menu.
If your developer has also made any custom components, the front-end part would be somewhere in the components folder, and the backend bit would be in administrator->components.
You need to read some Joomla tutorials. There are many places that can be used to "display the html/php".
First you have the template files that determine how the site looks and what module positions are available to be used. Generally there is one template in use but there can be multiples.
Next you will have components where the content is entered. At a minimum it is likely that you are using the com_content (articles/categories) and it is very likely there are others being used.
You will also have various modules that will display content in areas outside of the main content area. This will generally include menus, login forms, and other similar content.
Last, plugins can also have an effect on the content. In some cases plugins inject content and in others they replace placeholders with content.
There are a lot of pieces to the puzzle that all come together to display the resulting web page, it's not just a simple question of accessing some files.

Incorporating phpBB 3.0 into our HTML page rather than in a whole page for itself?

Having a bit of difficulty trying to incorporate the phpBB forum within a on our own page. Does anyone know if this is actually possible?
It might be that phpBB is not the correct product for the job but I had to start somewhere. Looking for a low quantity Message Forum to incorporate into our website. Rather than have it in it's own page I would like to build it into our standard page layout with our own Header, Menu, Quick links panel, floating Footer etc.
Can this be done, if so is phpBB the right Forum to use or should I be looking at something else.
Thanks,
You can create a phpBB board style which matches your regular page layout. See e.g. http://www.phpbb.com/kb/article/how-to-create-a-style-basics/ for some details.
Note that phpBB updates can introduce changes to the default board style - when this happens, you will need to update your board style accordingly to make sure everything works as expected.
You could try modifying the phpBB template files (.tpl) to pull in your website framework and then the forum will be surrouned with your actual website e.g. header, menu, footer, etc.
Here's a little more info: http://www.webhostingtalk.com/archive/index.php/t-518275.html

Using WordPress as piecemeal in existing site?

After some solid advice from people on here about using WordPress for a small (six page) website, I wanted to broach another question regarding using WordPress for a non-blogging site. Yet, I know my client would like to update various, but small portions of their site from time-to-time.
I won't be installing WP in the root, but a sub-directory and have all my core site files sitting in the root.
Here are my questions:
Can I include content from Pages in WordPress and output that content on any page outside of the WP install directory? Is there something specific I would need to include?
Do I have to use a Theme or can I still use my already built CSS?
I'd like to be able to use my own CSS for the site and not have it be tied to a Theme - is that possible? Meaning I use www.example.com/css/styles.css vs www.example.com/wp-content/themes/styles.css.
I also have a slider comprised of three DIVs for each panel, can I pull in that specific Page with that markup for the slider?
Can I also make my own queries for data as well?
Is there anything that I won't be able to accomplish or advise against doing?
I'm mostly concerned about having to use a Theme, mostly because I don't know if I'll need to use it or not.
Thanks for any help.
Lots of docs available:
http://codex.wordpress.org/Moving_WordPress#Giving_WordPress_its_Own_Directory_While_Leaving_the_WordPress_Index_File_in_the_Root_Directory
and
http://codex.wordpress.org/Integrating_WordPress_with_Your_Website , where you pull pages/posts from the WP loop into your existing design, CSS, etc.
You will need to link necessary JS files in the site.
http://codex.wordpress.org/Function_Reference/query_posts will show you how to make your own queries.

Categories