Searching for a specific value in a Wordpress Category Array

Hey Experts!!

My overall goal is to be able to show a different image based on a certain category name in Wordpress.  I'm hard coding this since we're not allowed to use plugins.(I don't know why).

My code is below.  What I've been doing is getting the category array and then if the 2nd iteration of that array(2nd category)is equal to whatever I have set, then show an image.  The fundamental flaw with this is that the 2nd iteration of the categories array will not always contain the value I'm searching for.  

What I thought I could do is search the array, using array_search, to find the exact name I'm looking for.  I just have no idea how to set that up.

Any and all help is appreciated. Code that I have so far is below:
<?php 
				$category = get_the_category($id);
				if($category[1]->name == 'name1') //name1
					echo ('<a href="http://mydomain.com/">
							<img src="goes here" />
						</a>');
				elseif($category[1]->name == 'name2') //name2
					echo ('<h1>name2</h1>');			
				elseif($category[1]->name == 'name3') //name3
					echo ('<h1>name3</h1>');
				elseif($category[1]->name == 'name4') //name4
					echo ('<h1>name4</h1>')
			?>

Open in new window

LVL 30
LZ1Asked:
Who is Participating?
 
DzynitCommented:
That sounds like an easier solution.
0
 
DzynitCommented:
Have you tried using the is_category('id'); call instead?
You can refer to the reference page here for different ways to check (by id #, name, etc):
http://codex.wordpress.org/Function_Reference/is_category

0
 
LZ1Author Commented:
Doing that still only gives me the 1st array's id.  This is not always consistent.  I've found that the value I'm checking for can sometimes be 3 or 4 deep.
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
LZ1Author Commented:
After digging deeper on our end, I realized we cannot do what I'm asking with just the categories.  We have multiple sites under 1 WP install and several of our categories are overlapping other sites.

Suggestions?
0
 
DzynitCommented:
I'm not sure in that case unless the tables use different prefixes per site. Maybe adding an extra conditional to check if it's the right site first then check the cat id?
0
 
LZ1Author Commented:
Unfortunately the tables are standard WP installs.  They have 1 wordpress install for 19 different websites.  Unfortunately I don't think this is going to be as easy as I once thought.
0
 
DzynitCommented:
Give it a try adding a second conditional:
if (strpos(get_bloginfo('url'),"domain.com") != false) && is_category('x')) {
echo 'your pic';
}

Open in new window

0
 
LZ1Author Commented:
Actually Dzynit, this ended up working.  Because I'm not always looking for the category, it's shorter and I think easier to search on the URL.

Let me know your thoughts.
<?php
	$url = $_SERVER['HTTP_HOST'];//gets current page url
	if (stristr($url, 'mydomain1.com') == true)
		echo ('<a href="http://mydomain.com/">
			<img src="http://content-1.s3.amazonaws.com/images/skis/tag-cloud.jpg" alt="Save On Packages" title="Save On Packages"  width="250px"/>
		</a>');
	elseif(stristr($url, 'mydomain2.com') == true)
		echo "Mydomain2.com "; 
	elseif(stristr($url, 'mydomain3.com') == true)
		echo "Mydomain3.com"; 
?>

Open in new window

0
 
AndyBeardCommented:
Modern themes effectively have this built in

<div id="post-3290" class="post-3290 post type-post hentry category-google tag-twitter tag-twitter-hacked tag-youtube tag-youtube-hacked">
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.