onpage php in WordPress

3 replies
I'm testing that this button works with a simple function before trying to write a more complex one.It's not working and I don't know what I missed.
Here is the on page code:
Code:
<a role="button" href="?action=check_button" class="add-role">TEST</a>
Here is what I added in the theme function file:
Code:
function check_button()  {
	echo 'This button is being worked on';

}
#onpage #php #wordpress
  • Profile picture of the author WebMarketingTool
    I'm not big into WordPress but the code that would work on a normal website is below:

    <a role="button" href="javascript:check_button()" class="add-role">TEST</a>

    And then for the function to change it to alert or something else (like update the content of a div). Below I switched it to an alert:
    function check_button() { alert('This button is being worked on'); }

    Again, this is just normal html/javascript that will work on any site and not sure how to do it using WordPress features if that is what you are trying to do.
    {{ DiscussionBoard.errors[10663363].message }}
  • Profile picture of the author rhinocl
    I tried the code you gave me and modified the function to read:

    Code:
    function check_button()  {
    	echo 'alert("This button is being worked on")';
    
    }
    but still no joy.
    {{ DiscussionBoard.errors[10663896].message }}
    • Profile picture of the author WebMarketingTool
      Originally Posted by rhinocl View Post

      I tried the code you gave me and modified the function to read:

      Code:
      function check_button()  {
          echo 'alert("This button is being worked on")';
      
      }
      but still no joy.

      The issue is you have:
      echo 'alert("This button is being worked on")';
      Instead of:
      alert("This button is being worked on");

      Echo is not used in javascript. Alert gives a popup alert. As an alternative you could use:
      document.write("This button is being worked on");

      Which would write it at the spot in the page where the code exists, just this is bad practice for several reasons. If you are trying to put in on a page then you would use something like:

      document.getElementById("yourid").innerHTML = "This button is being worked on";

      And then have an element like a div with the id of yourid like this:
      <div id="yourid"></div>

      In the example above the javascript code needs to be either beneath the <div> in the file OR it needs to be deferred to not run until after the page has loaded.

      Let me know if you have anymore questions/issues.
      {{ DiscussionBoard.errors[10665715].message }}

Trending Topics