Welcome to the Treehouse Community
The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Boris Kamp
16,660 PointsCreate/update post title from ACF fields
Hi guys!
I've this code in order to successfully update the post title of my manufacturer
and product
post types:
//Auto add and update Title field:
function my_post_title_updater( $post_id ) {
$my_post = array();
$my_post['ID'] = $post_id;
$manufacturer = get_field('manufacturer');
$target_product = get_field('target_product');
$manufacturer_target = get_field('manufacturer', $target_product);
if ( get_post_type() == 'manufacturer' ) {
$my_post['post_title'] = get_field('manufacturer_name');
} elseif ( get_post_type() == 'products' ) {
$my_post['post_title'] = get_field('kitName') . ' (' . get_field('manufacturer_name', $manufacturer->ID) . ' ' . get_field('kitNumber') . ')';
} elseif ( get_post_type() == 'reviews' ) {
$my_post['post_title'] = get_field('kitName', $target_product->ID) . ' (' . get_field('manufacturer_name', $manufacturer_target->ID) . ' ' . get_field('kitNumber', $target_product->ID) . ')';
}
// Update the post into the database
wp_update_post( $my_post );
}
// run after ACF saves the $_POST['fields'] data
add_action('acf/save_post', 'my_post_title_updater', 20);
However, my latest elseif
statement fails miserably! for the reviews
posts type im trying to concatenate:
<ol>
<li>the kitName
field from a relationship object (product
post type object) so thats one layer deep: review > product </li>
<li>the manufacturer_name
field from the manufacturer field (manufacturer
post object) of the product
relationship mentioned directly above here. so that one is two layers deep: review > product > manufacturer</li>
<li>the kitNumber
field from a relationship object (product
post type object) so thats one layer deep: review > product </li>
</ol>
with I get the following error: Trying to get property of non-object
. So basically it's telling me it expect an object but gets something else and thus cannot process the function, however, i have the return format
of the relationship set to object
, so I have no idea what I'm doing wrong here!?
can anybody help me out please? thanks a lot!