- NewspaperFlex Block Builder and Flex Loop Builder
- NewspaperHow to use the Flex Blocks cache option
- NewspaperHow to edit modules for Flex Block X
- NewspaperHow to insert a block inside the content of a post
- NewspaperFlex Block Settings Guide
- NewspaperMeta Info on Modules and Blocks
- NewspaperTheme modules and blocks
- NewspaperThumbnails – Fix strange looking images on blocks
- NewspaperBlock settings tutorial
- NewspaperCategory Tag on Modules/blocks
- NewspaperWP Rocket and Newspaper Theme: Optimization Guide
- NewspaperSearch setup for custom post type
- NewspapertagDiv Opt-In Builder – Emails
- NewspaperBookmark – Save For Later
- NewspaperModules Builder in Newspaper Theme
- NewspaperFilters and sorting for taxonomies
- NewspaperUser review system
- NewspaperWooCommerce: Happy “Add to Favorites!”
- NewspaperLockers
- NewspaperLeads
Hello all,
I’m trying to fill out the white space with content thumbnails in Block 1 style that I use for part of my website. Without getting too complicated, is there a way to configure the block to display all 15 items. Perhaps it is better to use another block but I need guidance.
My site is EastBoston.com.
Thanks for your help.
Frank
Hello,
I am encountering an issue when trying to access the REST API endpoint /wp-json/td-composer/save_post. The route returns a 404 error (“No route was found that matches the URL and request method”). However, I am able to access the namespace /wp-json/td-composer/, which suggests the namespace is registered, but the specific endpoint is not.
Here’s what I’ve already tried to resolve the issue:
1. Code Review
I checked the tdc_ajax.php file where the /save_post/ route is registered with the following code:
php
register_rest_route($namespace, '/save_post/', array(
'methods' => 'POST',
'callback' => array('tdc_ajax', 'on_ajax_save_post'),
'permission_callback' => '__return_true',
));
I tested replacing the callback with an anonymous function that returns a simple response, but the 404 error persists:
php
register_rest_route($namespace, '/save_post/', array(
'methods' => 'POST',
'callback' => function() {
return new WP_REST_Response('Route is working', 200);
},
'permission_callback' => '__return_true',
));
2. Server Permissions
I adjusted the server permissions to ensure:
Directories are set to 755.
Files are set to 644.
The wp-config.php file is secured with 600 permissions.
Ownership of files and directories is set correctly for the web server user (apache).
3. Permalink Rewriting
I resaved the permalink settings in Settings > Permalinks in WordPress, but it didn’t resolve the issue.
4. Cache and ModSecurity
Cleared all caching services (Cloudflare and any caching plugins).
Temporarily disabled ModSecurity to ensure it wasn’t blocking the REST requests.
5. PHP Extensions and Configuration
Verified that the necessary PHP extensions are active, including:
json
curl
mbstring
openssl
The PHP version is 7.4, which meets the requirements.
Increased the PHP limits in the php.ini configuration:
memory_limit = 256M
max_execution_time = 300
post_max_size = 64M
6. Plugin and Theme Conflicts
Tested with all other plugins disabled, leaving only the one registering the REST route.
Switched to the default Twenty Twenty-One theme to ensure there was no theme conflict, but the 404 error persists.
7. Error Logs
Checked the PHP and server (Apache) error logs but found no relevant messages related to the failure in registering the REST route.
8. Namespace Adjustments
The namespace is currently set to ‘td-composer’. I also tried adding a version (‘td-composer/v1’), but the issue remains the same.
9. Debugging Attempts
I added debug statements to ensure that the rest_api_init hook is being called. The debug message appears, confirming that the code is executing, but the /save_post/ endpoint is still not accessible.
After trying all these solutions, I am reaching out for assistance. Is there any specific issue with the Newspaper theme or the td-composer plugin that could be causing this failure to register the route?
Thank you in advance for your help. I look forward to your guidance.
Hi, I have the same problem in two websites of a company ( https://banks.com.gr , https://insuranceworld.gr ). I’m using Search cloud template and flex block 1 (I tried posts loop also) to display search results. I set category filter to Search – Current search, sort order to latest and post type to post. The results aren’t in the right date order in both websites.
Then I had a look to a personal project without cloud templates ( https://zoumeoraia.okmarkets.gr ) and it does the same.
It’s very strange. I tried everything. Please help.
Hello,
1. Please let me know when you need the block replacements. You can choose what block you want from composer https://i.imgur.com/hV0E9kP.png -> https://i.imgur.com/yP29dQ9.png -> https://forum.tagdiv.com/flex-block-settings-guide/
2. To increase page speed, I recommend checking which thumbnails you are using on your blocks. You might want to avoid having all of them enabled and optimize and regenerate images. You can use the EWWW Image Optimizer for image optimisation, and the OMGF plugin for fonts. Additionally, you can use the WP Rocket plugin.
here are many optimization guides provided by our users here in the forum, some made by us; you could check some of them
– https://www.infophilic.com/get-almost-100-pagespeed-newspaper-theme/
– https://forum.tagdiv.com/cache-plugin-install-and-configure/
– https://forum.tagdiv.com/how-to-make-the-site-faster/
– https://forum.tagdiv.com/topic/high-number-of-ajax-request/
– https://forum.tagdiv.com/topic/score-100100-pagespeed-with-newspaper-wordpress-theme/
– https://www.andraware.com/wp-rocket-for-newspaper-theme/
– https://forum.tagdiv.com/topic/page-speed-guide-for-2023-beginners-and-advanced/
– https://forum.tagdiv.com/topic/newspaper-theme-speedify-your-website/
– https://forum.tagdiv.com/topic/tutorial-chriss-custom-optimizations-for-functions-php-etc/
– https://forum.tagdiv.com/cloudflare-cdn/
– https://forum.tagdiv.com/topic/theme-causing-high-cpu-usage-2/
– https://forum.tagdiv.com/topic/sql-querys-high-cpu/
– https://forum.tagdiv.com/topic/newspaper-theme-slow-to-respond/
– https://premium.wpmudev.org/blog/optimizing-your-wordpress-database-a-complete-guide/
– https://underconstructionpage.com/optimize-wordpress-database/
– https://crunchify.com/better-optimize-wordpress-database-all-in-one-guide/
Thank you!
As I can see, only Flex Block has this option.
understood. Now I am working on pages and learning about blocks.
It should be possible, once I have inserted one block with somme content, to replace with another (similar or not) and have the most of the content still reusable.
I am looking for such option but I dont find any information how to do.
The idea to insert a new block with different characteristics and copy/past content to check what is the appearance in the new block is very scary.
Q1: I checked documentation and blogs but it looks like nobody ever does a block replacements ?
Maybe I am still too fresh in using tagDiv but the learning curve is not negligible:
Q2: Any suggestion to speed up ?
Hello Mark!
By default, they exist with positive values, so with negative values, you can emulate them. Yes, you should apply auto, so it will expand depending on the block sizes too.
Thank you!
Hi, i try to show post in flex block 1 filter by tag, but not show anything. I have three post with the same tag but it doesn’t show them. My site is radio21tucuman.com. Thanks
Hello Mark!
They are, by default, for blocks. I apply some negative values there, so the blocks from those pages are fully stretched. I’ve set the width to auto as well.
Thank you!
Hi there,
I already have grow plugin and it satisfies the bookmark need, and I don’t want to duplicate and complicate bookmark page because I don’t want user records on my server.
How to block autogeneration of /bookmark-page/ ?
and it causing Resource page is also having auto append of /bookmark-page/. I tried to use server side config, but i need to disable it from theme.
Thanks
Hi,
on my homepage I have “woo product block” with an active filter category named “Home Page”. It means I want to show only products from that category. Unfortunately, changing the sort order (for example by date or by title), it shows (doesn’t show) some products. Beside, it could be useful to choose the direction, ascending/descending, of the sorting function.
can you help me with that?
thanks
I’m trying to change my thumbnail settings on that block, but it keeps hanging and never opens. Other settings work, just not that particular one.
I’ve deactivated all plugins, and the issue is still the same.
Please let me know what I can do to try to fix it.
Thanks!
Hi,
A workaround for want you need is to use the Multiple terms filter and set the IDs of your categories -> https://forum.tagdiv.com/flex-block-settings-guide/ “– This option allows you to filter the posts by multiple categories. The procedure is similar to the one used on the Post ID filter. Add the category IDs separated by commas (ex: 13,23,18). If you want to exclude categories, add a ‘-’ symbol in front of each ID. If you want to display posts from a category and remove the posts included in one of its sub-categories, first add the parent category ID (ex. Fashion category – 341) and after it, place the sub-category ID (ex. Daily subcategory id: 342) with a ‘-’ symbol in front. If you decide to use the ‘multiple taxonomies filter,’ the standard Category Filter is ignored.”
Thank you!
Hi,
Maybe the block has an offset, so it will skip a number of posts, please check and remove it if there is https://prnt.sc/ud17t8
Thank you!
In the flex block 1 and flex block 2 blocks on the homepage if in the filter category I choose some categories even if there are articles it doesn’t show me anything
Hello!
I can see that you use the Slide shortcode and not the Revolution Slide plugin.
Did you apply the same filter for the slide as the filter from the flex block?
Thank you!
Hello,
So, should I understand that you did an update and your categories were deleted, or did you update and install a prebuilt website, and that’s when the problem appeared?
So, if you had a prebuilt website with content and organized the posts based on the imported categories, then when you installed a new prebuilt website, those categories were deleted. Therefore, you need to import only the templates, not an entire prebuilt website. Also, depending on your prebuilt website, you will need to edit the header template with tagDiv Composer and set a menu https://forum.tagdiv.com/main-menu/. Additionally, you will need to edit the page with tagDiv Composer, filter the blocks by your categories, and edit the titles-> https://i.imgur.com/cf4HzI4.jpeg -> https://i.imgur.com/izT4Q8q.jpeg https://forum.tagdiv.com/flex-block-settings-guide/
Thank you!
Hello,
Unfortunately, our tagDiv team doesn’t have an employee named Carlos. From what I see there, that person has installed some malware plugins on your site, so you’ll need to manually clean the site. For example, you should delete plugins with strange or unknown names, remove any users you don’t recognize, and clean any suspicious code files, both in the theme and WordPress.
You could consider reinstalling the WordPress version, and checking for this plugin wp-zexit.php. It might be wise to inspect via FTP if it doesn’t appear in the WordPress -> Plugins. Additionally, using Wordfence to scan the website and remove unknown users would be prudent.
Change admin passwords and delete admin accounts you are not familiar with;
– Delete any weird/unknown plugins;
– Delete the weird/unknown themes;
– Clean unfamiliar Theme Panel injected code (example – https://i.imgur.com/4q70kCv.png);
– Clean WordPress files (example – https://i.imgur.com/stJCqiK.png)
Please block /wp-json/tdw/save_css
If an attacker wants to target this URL /wp-json/tdw/save_css they can do so. Even if the website uses a different theme, the attacker can still try that URL. We could add an option to be able to enable/disable the Live CSS, it will be considered. But for now in order to remove it this can only be done with a modification to the composer plugin. I think that all that removing it requires is to comment this line of code – https://prnt.sc/RtwvL5Nc4ikR -> https://prnt.sc/ymZmhdUfp57U But as I mentioned, the attacker can still try to access the URL.
Thank you!
There is flex loop filters for flex loop builder. Is there anything similar for Post Loop block?
Hello!
Something from your end is blocking the process.
Please get in touch with us via email at contact@tagdiv.com and provide the following:
– admin URL and credentials
– the license certificate and purchase code
– a link to this topic to identify you
We will check and try to help you as soon as possible!
Thank you!
Hello,
The only solution is to use a posts loop block; this is the behaviour flex loop block.
Thank you!
Hello!
You can use our Opt-in builder plugin to create a locker or partial locker that locks the post content. You should have a plan for subscribers, free or paid.
Embed your video using these blocks https://app.screencast.com/cxmKApvRNzbMo from Gutenberg directly in your post content.
The subscribers can play directly from your website: https://app.screencast.com/wZfRgcXKeDAV3
If you want to display that on the homepage, then you can embed the video with the help of the Video Embed shortcode. Add a separate row for the elements you want to hide from other users and display them only for subscribers. The row has these settings that you can use: https://app.screencast.com/22VDz1PnyJGV6
I hope that helps you!
Thank you!
I tried to use with Custom Post Type UI and the composer.
I am trying to display custom fields (such as Artist Photo and Artist Bio) from the Artist post type when viewing a Song post. The Song post is linked to an Artist post using an ACF Post Object field.Issue:
When editing a Song post in TagDiv Composer, the custom fields from the related Artist post (e.g., Artist Photo, Artist Bio) do not display. I’ve tried multiple approaches, including:
Adding a Custom Field block in TagDiv Composer and attempting to pull the image field from the linked Artist post.
Ensuring that the Artist Photo field in the Artist post is set to return an Image URL in ACF.
Checking that the Post Object field correctly links the Song post to the Artist post.
Using both Image and Text fields in the Artist post to ensure that TagDiv can render both types of fields.
Clearing all caches and refreshing after making changes.
Steps to Reproduce:
Create a Post Object Field in the Songs post type that links to the Artist post.
In the Artist post type, create fields for Artist Photo (Image) and Artist Bio (Text).
Link a Song post to an Artist post using the Post Object field.
Open the Song post in TagDiv Composer and attempt to add a Custom Field block to display the Artist Photo and Artist Bio from the linked Artist post.
What I’ve Tried:
Inserting a Custom Field in TagDiv Composer and selecting the Artist Photo field from the related Artist post.
Verifying the return format of the fields in ACF (set to Image URL).
Using Text Blocks in TagDiv Composer to display text fields from the related Artist post, but it doesn’t work.
Clearing cache and disabling any third-party plugins that could interfere.
Expected Behavior:
I expect the Artist Photo (image) and Artist Bio (text) from the linked Artist post to display in the Song post when using TagDiv Composer.Actual Behavior:
The Custom Field block in TagDiv Composer does not display the data from the linked Artist post, even though the Post Object field is set correctly and the data is available in the Artist post.
Hello,
I made little changes to the code:
.td_block_inner {
counter-reset: section;
}
.td-numbered-post-flex .td_block_inner .td_module_flex_1::before {
counter-increment: section;
content: counter(section);
color: #767676;
font-size: 22px;
font-weight: 500;
line-height: 1.3;
text-align: left;
display: block;
position: absolute;
}
@media (min-width: 768px) and (max-width: 1018px) {
.td-numbered-post-flex .td_block_inner .td_module_flex_1::before {
font-size: 20px;
}
}
But the numbers and the titles overlap with one another. I want numbers to come first followed by some space and then the titles.
Hi tagDiv support team,
I’m currently facing an issue with getting my ACF (Advanced Custom Fields) image field to display correctly when using a custom shortcode inside the tagDiv Composer. Specifically, I have created a shortcode to display an album cover using ACF, and it works perfectly when added directly in the post body via the WordPress editor. However, when I try to use this shortcode within tagDiv’s Composer (e.g., inside text blocks or other visual elements), the image does not appear at all.
Here are some details about my setup:
I’ve verified that the shortcode is active and functioning and have tested different return formats (ID, Array, URL) as per ACF’s documentation, but the shortcode simply doesn’t seem to execute when used within tagDiv Composer.
Is there a specific way that tagDiv Composer handles shortcodes, or any setting I might be missing that could help the shortcode work in this context? I appreciate any advice or solutions you could provide.
Thank you in advance for your help.
function display_album_cover_shortcode($atts) {
// Ensure we're getting the correct post ID
$atts = shortcode_atts(
array(
'post_id' => get_the_ID(),
),
$atts
);
$post_id = $atts['post_id'];
// Get the album cover field using ACF
$album_cover = get_field('album_cover', $post_id);
// If album cover is not provided or empty, return empty
if (empty($album_cover)) {
return '';
}
// Use ACF documentation approach to handle different return types
if (is_numeric($album_cover)) {
// If return type is ID, use wp_get_attachment_image
$output = '<div class="album-cover-container" style="max-width: 300px; margin: 0 auto;">';
$output .= wp_get_attachment_image($album_cover, 'full', false, ['style' => 'width: 100%; height: auto; border-radius: 4px;']);
$output .= '</div>';
} elseif (is_array($album_cover) && isset($album_cover['url'])) {
// If return type is array, get the URL from array
$output = '<div class="album-cover-container" style="max-width: 300px; margin: 0 auto;">';
$output .= '<img src="' . esc_url($album_cover['url']) . '" alt="' . esc_attr($album_cover['alt']) . '" style="width: 100%; height: auto; border-radius: 4px;">';
$output .= '</div>';
} elseif (is_string($album_cover)) {
// If return type is URL
$output = '<div class="album-cover-container" style="max-width: 300px; margin: 0 auto;">';
$output .= '<img src="' . esc_url($album_cover) . '" alt="Album Cover" style="width: 100%; height: auto; border-radius: 4px;">';
$output .= '</div>';
} else {
return '';
}
return $output;
}
add_shortcode('album_cover', 'display_album_cover_shortcode');