Hot answers tagged

11

I could finally get rid of that using this: function my_deregister_scripts(){ wp_deregister_script( 'wp-embed' ); } add_action( 'wp_footer', 'my_deregister_scripts' );


10

Looking at wp-includes/template-loader.php … there seems to be a way: if ( $template = apply_filters( 'template_include', $template ) ) include( $template ); You could hook into that filter, handle the including in a callback function and return FALSE. Sample code, not tested: add_filter( 'template_include', function( $template ) { ...


9

Add this to your functions.php: function my_footer_shh() { remove_filter( 'update_footer', 'core_update_footer' ); } add_action( 'admin_menu', 'my_footer_shh' ); or, if you'd like to hide it from everyone except admins: function my_footer_shh() { if ( ! current_user_can('manage_options') ) { // 'update_core' may be more appropriate ...


7

You should always add javascript (and styles) with the Wordpress function wp_enqueue_script() Works like this: wp_enqueue_script( $handle // the name of your enqueued file, in your case 'myscript' ,$src // source of your file, can be external, or for your example: get_bloginfo('template_directory') . '/js/scripts.js' ,$deps // does your javascript ...


5

You have true set in the 4th parameter (version), not the 5th. wp_enqueue_script( 'my_javascript_file', //slug get_template_directory_uri() . '/javascripts/app.js', //path array('jquery'), //dependencies false, //version ...


5

There are 3 methods. Somewhat weird but since this text is internationalized you can filter the output. This is just an example to remove the text, the link is still present in the source. add_filter('gettext', 'remove_powered_by', 20, 3); function remove_powered_by( $translated_text, $untranslated_text, $domain ) { $custom_field_text = 'Proudly ...


5

Actually all styles should be placed in header. So WordPress doesn't have a parameter for doing this in the wp_enqueue_style function. ADDED: OK, if you really want to do it, there is a way. You can use print_late_styles() function which is called in footer. You just need to enqueue your styles when header is already passed. So you need to find some hook ...


4

If you change the priority on the hook to wp_footer you should be able to shift when it's called in reference to the enqueue functions. Example: add_action('wp_footer', 'my_footer_hook', PHP_INT_MAX);


4

I am not sure if you posted code as-is or extracted part of it, but per this snippet - you are hooking function inside itself. Which doesn't seem like it will work nicely. :) Also init hook should not be used for enqueue, on front-end hook to use is wp_enqueue_scripts, see where is the right place to register/enqueue scripts & styles. Example ...


4

Hook into 'admin_footer-post-new.php' and 'admin_footer-post.php', check the global variable $post_type: add_action( 'admin_footer-post-new.php', 'wpse_73692_script' ); add_action( 'admin_footer-post.php', 'wpse_73692_script' ); function wpse_73692_script() { if ( 'post' !== $GLOBALS['post_type'] ) return; ?> <script>alert( ...


4

This is what ended up working for me: Put your script into a .js file and then: add_action( 'login_enqueue_scripts', 'enqueue_my_script' ); function enqueue_my_script( $page ) { wp_enqueue_script( 'my-script', 'http://domain.com/path/myjs-file.js', null, null, true ); }


3

There's an in_footer parameter that you can pass to wp_enqueue_scripts - does that work? I would hook to admin_enqueue_scripts, check the $page for location, and enqueue your script there, with 'in_footer' as true. Example: add_action( 'admin_enqueue_scripts', 'enqueue_my_script' ); function enqueue_my_script( $page ) { if ($page !== 'edit.php') ...


3

Have you perhaps copied in the admin bar links into the footer.php file by accident? At the bottom of footer.php you should see a function call "wp_footer();".


3

I don't think there's anything fundamentally wrong with your approach, I see it pretty often. You could hook parse_request and 301 redirect any requests to footer to the front page. I wonder though how visitors would end up there in the first place, as long as you exclude it from the sitemap and don't link to it anywhere. Or you could create a custom post ...


3

This is not an error, it is a warning. You can make this go away by: Fixing the warning Write errors to the error log instead of the screen ( best practice ) To fix the error, I recommend looking at what's hooking into wp_footer etc, or using a PHP debugger


3

Look in the parent theme's functions.js. It looks like an implementation of the "sticky footer" concept. The margin is being set via script: var body = $( 'body' ), _window = $( window ); /** * Adds a top margin to the footer if the sidebar widget area is higher * than the rest of the page, to help the footer always visually clear * the sidebar. ...


3

@scribu proposes a method for reducing code repetition in WordPress templates which he calls theme wrappers, which achieves what you're looking for. The roots theme uses a slightly modified version of this method.


3

If I interpret the question correctly you: Don't have any .js javascript files Output any javascript you have from an .php file (presumably code) Include this javascript on the bottom of the page by including the .php file. So you are actually doing: Correct Combining all the javascript in one file Having the javascript in the footer Minimized the ...


3

If you're just using a small script or other markup, you can hook a function to the wp_footer filter, which is included in all modern themes: function wpse_77196_script_in_footer() { <script language="javascript" type="text/javascript"> startcart() </script> } add_filter( 'wp_footer', 'wpse_77196_script_in_footer' ); However, if ...


3

Your iframe tag that supplies your Facebook information isn't closed. So the code stops rendering from that tag on.


3

is_home() will do just exactly that. It returns true on the home page and false on any other page. Your solution will be to completely wrap your code above in an is_home() conditional if ( is_home() ) { // Your in question comes here }


3

There are a couple of options: Use a Plugin that adds contextual conditions to Widgets Only output the dynamic_sidebar() in the page template in question. For example, if your custom page template is named template-foobar.php, and the dynamic sidebar name is footer-text-widget: if ( 'template-foobar.php' == get_page_template() ) { dynamic_sidebar( ...


3

Trix's answer didn't work out for me on WordPress 4.4.1, but I found a solution in the code of Disable Embeds WordPress plugin. Add this code (modified) in your theme's functions.php file to remove the wp-embed.min.js file from the frontend completely: add_action( 'init', function() { // Remove the REST API endpoint. remove_action('rest_api_init', ...


2

The other answer is not working for my site. I tried this script instead and it works fine for removing the WordPress version number from the right footer of admin pages: add_filter( 'admin_footer_text', '__return_empty_string', 11 ); add_filter( 'update_footer', '__return_empty_string', 11 );


2

Just add a variable to the function so you can call it differently from the template... EDITED: pass the footer row to function and return class... function mytheme_footer_sidebar_class($row) { if ($row == 1) {$i = 1; $j = 5;} elseif ($row == 2) {$i = 5; $j = 9;} $active_sidebars = 0; for ($i; $i < $j; $i++) { if ( ...


2

It is not possible to override header/footer via hooks in respective get_header()/get_header() functions. However it is often overlooked that these function allow input and loading different headers. For example get_header( 'nested/header' ); will look for header-nested/header.php in theme's folder. It's kind of a hack in regards to subdirectory use, but ...


2

The correct way to load footer-none.php is: get_footer("none"); Anyway, I think it can be better to use wp_footer() (required function on any frontend page) directly in the page template file so you don't need to load any empty footer template (assuming you load all required HTML tags in the page template, for example closing body and html). If you are ...


2

IMHO, I still think that loading scripts and styles directly in the header is bad practice as it is always a problem removing them and loading them coditionally. The best way to work around this is to create a [child theme] and then copy header.php to your child theme. Wordpress will load your child theme's header instead of the parent theme's header. You ...


2

You need to use the AND (&&) operator to make this work. As your condition stands, it will return true no matter which page you are on. The OR operator only needs one true to execute where as the AND operator needs all conditions to be true to execute I just have one other concern here as you are loading your footer conditionally, and that is, you ...


2

Add <?php get_footer(); ?> into index.php or the template you are using Then create footer.php and add in something like this: <?php /* Always have wp_footer() just before the closing </body> * tag of your theme, or you will break many plugins, which * generally use this hook to reference JavaScript files. */ ...



Only top voted, non community-wiki answers of a minimum length are eligible