LZ1
asked on
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:
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>')
?>
ASKER
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.
ASKER
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?
Suggestions?
SOLUTION
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
ASKER
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.
Give it a try adding a second conditional:
if (strpos(get_bloginfo('url'),"domain.com") != false) && is_category('x')) {
echo 'your pic';
}
ASKER
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.
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";
?>
ASKER CERTIFIED SOLUTION
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
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">
<div id="post-3290" class="post-3290 post type-post hentry category-google tag-twitter tag-twitter-hacked tag-youtube tag-youtube-hacked">
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