I’m following this tutorial on adding Google Content Experiments code to header.php
.
I added the following code to header.php
:
<?php if (is_page('346') ):?>
<!-- Google Analytics Content Experiment code -->
...
<!-- End of Google Analytics Content Experiment code -->
<?php endif; ?>
This didn’t produce the content experiment code on the front end. I tried:
<?php if (is_page(346) ):?>
<!-- Google Analytics Content Experiment code -->
...
<!-- End of Google Analytics Content Experiment code -->
<?php endif; ?>
This didn’t work either.
Can you see why this code is not working? Thanks.
you can use this for
you can use this anywhere either in header or anywhere else.
A simpler solution will be to pass the
title
or theslug
as argument inis_page()
. You won’t have issues if you duplicate that page on another server.Hooks such as
init
will not work at all.You have to hook at least on
parse_query
.Everything bellow will work:
But it must be hooked at least in
parse_query
or any other hook after it. You can see WordPress hook order here: https://codex.wordpress.org/Plugin_API/Action_ReferenceFirst you have to know the difference between a page and post. Once you have done that then you can choose whether to use is_page or is_single.
If you are dealing with WordPress pages, then write in this way below. Note, this example is using array just in case if you want to implement it in many pages:
But if you need it to take effect also on your posts, then add this lines too:
try to use is_single($post)
in your case is_single(346) or is_single(‘346’) both should work
more here
For single posts use
For single pages use
Where
'1346'
is your post or page ID.is_page will NOT work with single posts and is_single will not work with single pages.
Please try to remove
''
(single quotes) from ID number & it will work:completing @Lucas Bustamante ‘s answer