Concatenate site_url and string doesn’t work

Without knowing exactly what you are trying to do, it seems you want to append query variables to the URL. WordPress has methods for handling that properly, without manual string concatenation. Look at the documentation for add_query_arg() for details: https://developer.wordpress.org/reference/functions/add_query_arg/ You can rebuild the URL and append query variables to the URL query by using … Read more

How to get “extended” path info from URL in a plugin

In reply to “Update 1“: The code worked fine for me. So, I’m still getting a 404 when I go to “mypage” with anything following the pagename, like so: http://example.com/mypage/foo. Because your RegEx pattern is ^category/([^/]+)/?, so the URL you should have visited is http://example.com/category/foo. But then, you shouldn’t use category because that “base” is … Read more

Add custom URLs to WordPress’s XML sitemap

Sitemap Provider It’s possible to create a so called custom sitemap provider and register it with wp_register_sitemap_provider(). It’s helpful to look at the core setup, e.g. for the WP_Sitemaps_Posts provider and also the dev notes. Basic Example – Sitemap with custom URLs Here’s a very basic example that adds the wpse provider that extends WP_Sitemaps_Provider, … Read more

Allow single quote in URLs

WordPress will strip off special characters, since they can cause issues when writing to the database. It’s best practice to avoid using special (reserved) characters in URLs, as they can and will break when passing them around. Case in point, see your own post and the cutting off of the URL after the ‘.

I need to generate the CSS for my plugin from a function, how do i map a request to a function in the front-end?

This is forked from something I wrote for a similar requirement. empty( $_GET[‘my-css-var’] ) || add_action( ‘plugins_loaded’, ‘wpse_59089_css’ ); function wpse_59089_css() { header( ‘Content-Type: text/css’ ); // Aggressive caching to save future requests from the same client. $etag = ‘”‘ . md5( __FILE__ . $_GET[‘my-css-var’] ) . ‘”‘; header( ‘ETag: ‘ . $etag ); header( … Read more

How can I extract the URL of a link from a post?

Exist some WordPress function that retrieve the list of links (in my specific case only one) that are into a post? Check out the core wp_extract_urls() function: $urls = wp_extract_urls( $content ); that will extract urls from any given content. Example $content=”Two test sites: <a href=”http://foo.tld”>Foo.tld</a> and https://bar.tld”; $urls = wp_extract_urls( $content ); print_r( $urls … Read more

Make attachment pages require a base url

Endpoints are for adding extra query vars to existing routes, I think you just want a vanilla rewrite rule here: function wpd_media_image_rewrite_rule() { add_rewrite_rule( ‘^image/([^/]*)/?’, ‘index.php?post_type=attachment&name=$matches[1]’, ‘top’ ); } add_action( ‘init’, ‘wpd_media_image_rewrite_rule’ ); You might want to loop over valid mime-types there and add a rule for each. You also need to flush rewrites for … Read more

Check what is at URI (post, archive, etc…)

Retrieve “type” of query from url: Previous suggestions As noted in the linked answer, there’s url_to_postid(). This will just get you the ID of the object at that endpoint. Long story short, this function will only return an ID and then run a new \WP_Query to get the post type object from the DB and … Read more

get_site_url is not returning anything?

The functions that start with “get_” return the value to what’s calling it. So you would do <a href=”https://wordpress.stackexchange.com/questions/11893/<?php echo get_site_url(); ?>”> instead to print out the URL.