Title: Widget core code file
Last modified: August 21, 2016

---

# Widget core code file

 *  [Texan78](https://wordpress.org/support/users/texan78/)
 * (@texan78)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/)
 * Hello, I am new to WP so it’s a bit of a learning curve but an easy one. Since
   WP uses hooks and short code which is nice. I am unable to find the some code
   I am needing to edit.
 * Where is the core code for where the widgets are built? In my themes file for
   sidebar.php it has this which is nothing but hooks. Where would I find those 
   hooks where the core code for the widget is constructed?
 * sidebar.php
 *     ```
       <?php global $theme; ?>
   
       <div id="sidebar-primary">
   
           <?php
               if(!dynamic_sidebar('sidebar_primary')) {
                   /**
                   * The primary sidebar widget area. Manage the widgets from: wp-admin -> Appearance -> Widgets
                   */
                   $theme->hook('sidebar_primary');
               }
               $theme->hook("sidebar_primary_after");
           ?>
   
       </div><!-- #sidebar-primary -->
   
       <div id="sidebar-secondary">
           <?php
               if(!dynamic_sidebar('sidebar_secondary')) {
                   /**
                   * The secondary sidebar widget area. Manage the widgets from: wp-admin -> Appearance -> Widgets
                   */
                   $theme->hook('sidebar_secondary');
               }
           ?>
   
       </div><!-- #sidebar-secondary -->
       ```
   

Viewing 11 replies - 1 through 11 (of 11 total)

 *  [stephencottontail](https://wordpress.org/support/users/stephencottontail/)
 * (@stephencottontail)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879729)
 * What theme are you using?
 *  Thread Starter [Texan78](https://wordpress.org/support/users/texan78/)
 * (@texan78)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879739)
 * I am using this one.
 * [http://newwpthemes.com/demo/NewsAgency/](http://newwpthemes.com/demo/NewsAgency/)
 * I wouldn’t think the theme would matter as it is core WP code but I could be 
   wrong.
 *  [stephencottontail](https://wordpress.org/support/users/stephencottontail/)
 * (@stephencottontail)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879747)
 * I don’t have access to your theme’s code, so I can’t say for sure, but it looks
   like your theme registers various custom hooks which you can use for various 
   PHP functions. What exactly are you trying to accomplish?
 *  Thread Starter [Texan78](https://wordpress.org/support/users/texan78/)
 * (@texan78)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879756)
 * I have some code I am using to hide some Google AdSense code when it is accessed
   via mobile browser. It works fine as I have used it on other adds. I just need
   to access the core code for the widget so I can insert the code. I have tried
   wrapping the code around it in the same text box from the admin console where
   the code is pasted but the php isn’t rendered. So looks like I need to directly
   edit the file. I am just not sure where that code is so I can do that.
 * What file would normally have the code for widgets?
 *  [stephencottontail](https://wordpress.org/support/users/stephencottontail/)
 * (@stephencottontail)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879760)
 * I’m sorry to ask so many questions, but I’m still a bit unclear on what you’re
   doing. Are you using one of the Google AdSense plugins or does your theme contain
   a custom widget that replicates the functionality?
 *  Moderator [Jose Castaneda](https://wordpress.org/support/users/jcastaneda/)
 * (@jcastaneda)
 * THEME COFFEE MONKEY
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879765)
 * The core code for the widgets is located in the wp-includes folder. The default
   widgets is: default-widgets.php and the class is widgets.php
 *  Thread Starter [Texan78](https://wordpress.org/support/users/texan78/)
 * (@texan78)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879789)
 * Thanks Jose, those was the file I was needing but, unfortunately this code I 
   was needing wasn’t in there. When widgets are installed, what file does the code
   install into where it is actually displayed in the sidebar since the sidebar.
   php is just the hooks?
 * [@stephen](https://wordpress.org/support/users/stephen/), no worries, I am not
   good and explaining things. What I have is a regular widget that allows you to
   enter any text or HTML in it. You can’t put php in it though because for some
   reason it doesn’t render it which it should. So in this text box I have pasted
   my Google AdSense code in it to display a Google Ad in the sidebar. That works
   fine but, when you view it from a mobile device the add breaks the template. 
   So I have this code that I wrap around the Google Ads code that disables Google
   Ads on mobile devices. I just need to find where the code is that displays that
   widget in the sidebar so I can wrap this code around it.
 *     ```
       <?php if(isMobileBrowser()==0 || isMobileBrowser()==false){ ?>
       <----- GOOGLE AD OR WIDGET OUTPUT CODE GOES HERE -------->
        <?php } ?>
       ```
   
 *  Moderator [Jose Castaneda](https://wordpress.org/support/users/jcastaneda/)
 * (@jcastaneda)
 * THEME COFFEE MONKEY
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879800)
 * The function that calls the ‘widgets’ in general is `dynamic_sidebar( )`.
 * So let’s say you have two widgets in the “primary sidebar” and want to use it
   only when you are on a certain page. You would use it something like:
 *     ```
       if ( is_page( 'contact' ) ) {
         dynamic_sidebar( 'primary-sidebar' );
       }
       ```
   
 * Do keep in mind that the name/id of the sidebar is what is used when you register
   the sidebar(s).
 * I want to say there is a way to get the widget content but I could be wrong; 
   core has changed and you find new, and cool, things when you read through the
   source code. 🙂
 *  [stephencottontail](https://wordpress.org/support/users/stephencottontail/)
 * (@stephencottontail)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879804)
 * As you’ve discovered, the default WP text widget won’t execute PHP code. There
   are a [few plugins](http://wordpress.org/plugins/search.php?q=php+widget) that
   provide a text widget that will execute PHP code. Another option would be to 
   edit your `functions.php` in a child theme and put:
 *     ```
       add_filter('widget_text', 'php_text', 99);
       function php_text($text) {
           if (strpos($text, '<' . '?') !== false) {
               ob_start();
               eval('?' . '>' . $text);
               $text = ob_get_contents();
               ob_end_clean();
           }
           return $text;
       }
       ```
   
 * That code will filter the text widget output to execute PHP code.
 *  Thread Starter [Texan78](https://wordpress.org/support/users/texan78/)
 * (@texan78)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879881)
 * Thanks Jose, I did find that out looking through the code. Finding out where 
   the “primary-sidebar” code is constructed is a little difficult but, I think 
   I found a work around for this.
 * [@stephen](https://wordpress.org/support/users/stephen/), that worked great. 
   If I wanted to use it on a different widget I would just change the “widget_text”
   to the widget I wanted to use it with?
 *  [stephencottontail](https://wordpress.org/support/users/stephencottontail/)
 * (@stephencottontail)
 * [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879883)
 * To be honest, I’m not sure. From a quick glance at the filter reference, it looks
   like the text widget is the only widget that provides a builtin hook. Depending
   on what you need, you may have to write a custom widget or try searching the 
   plugin repository.

Viewing 11 replies - 1 through 11 (of 11 total)

The topic ‘Widget core code file’ is closed to new replies.

## Tags

 * [code](https://wordpress.org/support/topic-tag/code/)
 * [sidebar](https://wordpress.org/support/topic-tag/sidebar/)
 * [widgets](https://wordpress.org/support/topic-tag/widgets/)

 * 11 replies
 * 3 participants
 * Last reply from: [stephencottontail](https://wordpress.org/support/users/stephencottontail/)
 * Last activity: [12 years, 1 month ago](https://wordpress.org/support/topic/widget-core-code-file/#post-4879883)
 * Status: not resolved

## Topics

### Topics with no replies

### Non-support topics

### Resolved topics

### Unresolved topics

### All topics
