We have a multilingual WordPress website using WPML with over 52,000 posts across 8+ languages. We are encountering performance issues and site slowness, which seem to be related to the size of several database tables.
Here is an overview of the large database tables:
wp_icl_translate
: 1859.59 MBwp_icl_translation_status
: 1196.06 MBwp_postmeta
: 1095.48 MBwp_posts
: 570.16 MBwp_icl_string_translations
: 260.89 MBTo address these issues, we have optimized the database using the WP Rocket plugin, clearing out unnecessary data like post revisions, transients, and auto drafts. Additionally, we have set WP_POST_REVISIONS
to 3.
I came across the suggestion to split large tables into multiple tables as a potential optimization. Could anyone share their experience with this approach?
Moreover, I would appreciate any recommendations on further improving site performance, especially with regard to the database, queries, and overall request handling.
Thank you in advance for your assistance.
Best regards,
Vimal Roy
My team was testing Relevanssi Light to compare it with the standard free version, and we ran into a problem.
On all of our local environments when we enable this plugin, we are not seeing the index added to the wp_posts table. We have read in your comments that there should be a relevanssi_light_fulltext column added to the wp_posts table.
Our senior engineer was not seeing this on his end and asked me to test it on my local. When I did, I had the same exact problem. We’re also using two completely different local setups, so this indicates a plugin problem.
We’re intending to use Relevanssi on a very large site, and we only need the basic features. So we were excited to see this light version. The only addition we need to make is having tags included in the index to provide better results for posts.
I know this plugin hasn’t been updated in a few months, so perhaps we just identified a new problem. I felt it best to write you here to see if there’s a solution.
Looking forward to your response!
~ Michael
]]>NOTE: I don’t have any backup of the previous version of the website.
]]>First of all, i’d like to say, you’ve done amazing work. The plugin really helps and does A LOT for a wordpress user.
Still I have a question about how it could work:
Right now each photo is saved on wp_post_meta table, in the field “fifu_image_url” ALSO in wp_post table as an “attachment” post_type.
Is there any way to not touch the “WP_Post” Table? Just add it (for example) as a thumbnail or an image in wp_post_meta table?
Kindest regards.
]]>I made an automatic translation plugin for the content of page builder by siteOrigine .
it works very well on the editor classic .
but with Gutenberg I found a difficulty to read and modify the content on the wp_posts table
the question is : how i can read and edit the widgets ??
Thanks
<!-- wp:siteorigin-panels/layout-block {"panelsData":{"widgets":[{"title":"","text":"Patty needed help with her computer. She asked a coworker to help her. Patty said she would treat her coworker to a nice dinner. Her coworker asked, \u0022What kind of dinner?\u0022 Patty said a nice Chinese dinner. Her coworker said that sounded good. She would come over to Patty's apartment at 7 o'clock. Patty went home after work. She made a delicious Chinese dinner. But her coworker didn't show up at 7 o'clock. Her coworker didn't show up at 7:30. Her coworker didn't call. Patty called her coworker. No one answered. At 9:30 Patty went to bed. The phone rang. It was her coworker. Patty didn't answer the phone. Tomorrow she would ask someone else to help her.","filter":true,"visual":true,"panels_info":{"class":"WP_Widget_Text","raw":false,"grid":0,"cell":0,"id":0,"widget_id":"054bd741-ceb0-44a5-abb5-c01d75c8aacb","style":{"background_image_attachment":false,"background_display":"tile"}}},{"title":"","text":"eeeeeeeeeeeeeeeeee","filter":true,"visual":true,"panels_info":{"class":"WP_Widget_Text","raw":false,"grid":0,"cell":0,"id":1,"widget_id":"40b7b7a4-302e-4c48-8450-aaa94dc4822d","style":{"background_image_attachment":false,"background_display":"tile"}}}],"grids":[{"cells":1,"style":[]}],"grid_cells":[{"grid":0,"index":0,"weight":1,"style":[]}]},"contentPreview":"\u003cdiv id=\u0022pl-295\u0022 class=\u0022panel-layout\u0022 \u003e\u003cdiv id=\u0022pg-295-0\u0022 class=\u0022panel-grid panel-no-style\u0022 \u003e\u003cdiv id=\u0022pgc-295-0-0\u0022 class=\u0022panel-grid-cell\u0022 \u003e\u003cdiv id=\u0022panel-295-0-0-0\u0022 class=\u0022so-panel widget widget_text panel-first-child\u0022 data-index=\u00220\u0022 \u003e\t\t\t\u003cdiv class=\u0022textwidget\u0022\u003e\u003cp\u003ePatty needed help with her computer. She asked a coworker to help her. Patty said she would treat her coworker to a nice dinner. Her coworker asked, \u0026#8220;What kind of dinner?\u0026#8221; Patty said a nice Chinese dinner. Her coworker said that sounded good. She would come over to Patty\u0026#8217;s apartment at 7 o\u0026#8217;clock. Patty went home after work. She made a delicious Chinese dinner. But her coworker didn\u0026#8217;t show up at 7 o\u0026#8217;clock. Her coworker didn\u0026#8217;t show up at 7:30. Her coworker didn\u0026#8217;t call. Patty called her coworker. No one answered. At 9:30 Patty went to bed. The phone rang. It was her coworker. Patty didn\u0026#8217;t answer the phone. Tomorrow she would ask someone else to help her.\u003c/p\u003e\n\u003c/div\u003e\n\t\t\u003c/div\u003e\u003cdiv id=\u0022panel-295-0-0-1\u0022 class=\u0022so-panel widget widget_text panel-last-child\u0022 data-index=\u00221\u0022 \u003e\t\t\t\u003cdiv class=\u0022textwidget\u0022\u003e\u003cp\u003eeeeeeeeeeeeeeeeeee\u003c/p\u003e\n\u003c/div\u003e\n\t\t\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e"} -->
<div class="wp-block-siteorigin-panels-layout-block"><div id="pl-295" class="panel-layout" ><div id="pg-295-0" class="panel-grid panel-no-style" ><div id="pgc-295-0-0" class="panel-grid-cell" ><div id="panel-295-0-0-0" class="so-panel widget widget_text panel-first-child" data-index="0" > <div class="textwidget"><p>Patty needed help with her computer. She asked a coworker to help her. Patty said she would treat her coworker to a nice dinner. Her coworker asked, “What kind of dinner?” Patty said a nice Chinese dinner. Her coworker said that sounded good. She would come over to Patty’s apartment at 7 o’clock. Patty went home after work. She made a delicious Chinese dinner. But her coworker didn’t show up at 7 o’clock. Her coworker didn’t show up at 7:30. Her coworker didn’t call. Patty called her coworker. No one answered. At 9:30 Patty went to bed. The phone rang. It was her coworker. Patty didn’t answer the phone. Tomorrow she would ask someone else to help her.</p>
</div>
</div><div id="panel-295-0-0-1" class="so-panel widget widget_text panel-last-child" data-index="1" > <div class="textwidget"><p>eeeeeeeeeeeeeeeeee</p>
</div>
</div></div></div></div></div>
]]>when a course is purchased, the do_enroll function generates a post in wp_posts (post_type = tutor_enrolled). in this post, post_author is the user_id.
what can be the reason that this post_author is sometimes 0, leaving the student without being enrolled in the course?
thanks
]]>For some reason the URL links in the post content have not updated and I can not find the text in the database??
The post_content table only shows a description of the post not the actual text in the post?
So I was wondering where I can find the actual text that are in the posts so that I can update it?
]]>wp_posts
(post_author
, post_date
, post_date_gmt
, post_content
, post_content_filtered
, post_title
, post_excerpt
, post_status
, post_type
, comment_status
, ping_status
, post_password
, post_name
, to_ping
, pinged
, post_modified
, post_modified_gmt
, post_parent
, menu_order
, post_mime_type
, guid
) VALUES (1, ‘2020-01-12 16:22:17’, ‘2020-01-12 16:22:17’, ”, ”, ‘TheTestImage’, ”, ‘inherit’, ‘attachment’, ‘open’, ‘closed’, ”, ‘thetestimage’, ”, ”, ‘2020-01-12 16:22:17’, ‘2020-01-12 16:22:17’, 0, 0, ‘image/png’, ‘https://www.zams.co.in/wp-content/uploads/2020/01/TheTestImage-1.png’) made by media_handle_upload, wp_insert_attachment, wp_insert_post\n”, 807) = 807
please help
please help