function rdf_comment_storage_load

Same name in other branches
  1. 8.9.x core/modules/rdf/rdf.module \rdf_comment_storage_load()

Implements hook_ENTITY_TYPE_storage_load() for comment entities.

File

core/modules/rdf/rdf.module, line 252

Code

function rdf_comment_storage_load($comments) {
    foreach ($comments as $comment) {
        // Pages with many comments can show poor performance. This information
        // isn't needed until rdf_preprocess_comment() is called, but set it here
        // to optimize performance for websites that implement an entity cache.
        $created_mapping = rdf_get_mapping('comment', $comment->bundle())
            ->getPreparedFieldMapping('created');
        
        /** @var \Drupal\comment\CommentInterface $comment*/
        $comment->rdf_data['date'] = rdf_rdfa_attributes($created_mapping, $comment->get('created')
            ->first()
            ->toArray());
        if ($entity = $comment->getCommentedEntity()) {
            // The current function is a storage level hook, so avoid to bubble
            // bubbleable metadata, because it can be outside of a render context.
            $comment->rdf_data['entity_uri'] = $entity->toUrl()
                ->toString(TRUE)
                ->getGeneratedUrl();
        }
        if ($parent = $comment->getParentComment()) {
            $comment->rdf_data['pid_uri'] = $parent->toUrl()
                ->toString(TRUE)
                ->getGeneratedUrl();
        }
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.