Closed GoogleCodeExporter closed 8 years ago
This one is tricky: plugin collision is impossible to prevent on WordPress due
to its architectural limitations, and I can't debug WPML without purchasing it.
If you can upload the sitepress-multilingual-cms/sitepress.class.php file here
I can look at it in more depth.
If no errors are being logged, I would suspect that "@" is being used to
suppress errors. I really try to avoid that technique because it's an opaque
way to ignore problems.
Original comment by ever...@fireproofsocks.com
on 10 Mar 2015 at 8:28
I have send it to you WPML via wetransefer
Original comment by 2...@emblem.cc
on 10 Mar 2015 at 8:41
The problem (in my opinion) is in the WPML file: there's an uncheck do/while
loop there and the condition that causes the loop to exit is never met. Here's
the relevant code from lines 3984 - 3993:
if ( $existing_post_name || $this->is_bad_slug( $slug, $post_type, $post_parent ) ) { $suffix = 2; do { $post_name_check_args[ 'post_name' ] = substr( $slug, 0, 200 - ( strlen( $suffix ) + 1 ) ) . "-$suffix"; $post_name_check_prepare = $wpdb->prepare( $post_name_check_query, array_values( $post_name_check_args ) ); $existing_post_name = $wpdb->get_var( $post_name_check_prepare ); $suffix ++; } while ( $existing_post_name ); $slug = $post_name_check_args[ 'post_name' ]; }
So that's an issue that WPML should resolve. There are not standards in how WP
handles some of the stuff around custom post-types -- even in the WP core,
there are bugs, inconsistencies and things have been changing with each
release, so it's not really an argument where you can say that the CCTM or WPML
is handling them the right or wrong way... so the only logical thing to do in
my opinion is to adjust the run-away code. Don't build a loop that can get
stuck. At a minimum it needs to include a way to fail gracefully, e.g. by
setting a number of max iterations.
Going a step further would mean more carefully looking at what the possible
post names are, and adjust the code to look for that more effectively --
granted this is difficult when the WordPress API is so limited, but that's
what's needed here.
Original comment by ever...@fireproofsocks.com
on 10 Mar 2015 at 9:02
Thanks a lot.. hope WPML will do something about it and give you credits at
least..
Is there any way how to refund your time?
Original comment by 2...@emblem.cc
on 10 Mar 2015 at 9:12
You should file an updated bug report/feature-request with WPML: I cannot file
this because I don't have an account.
Donations are cheerfully accepted at
https://www.paypal.com/us/cgi-bin/webscr?cmd=_flow&SESSION=1Apw7uu6Syt_ly0IQB8J_
NGmaTdNR5tEhhBzqXVaQ4gxTPZyoi7MAnXhgWa&dispatch=5885d80a13c0db1f8e263663d3faee8d
e62a88b92df045c56447d40d60b23a7c
Original comment by ever...@fireproofsocks.com
on 10 Mar 2015 at 9:18
hey.. the bug is reported.
thanks
Original comment by 2...@emblem.cc
on 10 Mar 2015 at 9:34
the paypal link doesn't work.. is your email the key where to send some thanks?
Original comment by 2...@emblem.cc
on 10 Mar 2015 at 9:41
Try this:
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=FABHDKPU7P6
LN
Original comment by ever...@fireproofsocks.com
on 10 Mar 2015 at 9:52
Moving this to Github:
https://github.com/craftsmancoding/custom-content-type-manager/issues/2
Original comment by ever...@fireproofsocks.com
on 11 May 2015 at 4:07
Original issue reported on code.google.com by
2...@emblem.cc
on 10 Mar 2015 at 7:53