Graby\Extractor\ContentExtractor::extractTitle PHP Method

extractTitle() private method

Extract title for a given CSS class a node.
private extractTitle ( boolean $detectTitle, string $cssClass, DOMNode $node, string $logMessage ) : boolean
$detectTitle boolean Do we have to detect title ?
$cssClass string CSS class to look for
$node DOMNode DOMNode to look into
$logMessage string
return boolean Telling if we have to detect title again or not
    private function extractTitle($detectTitle, $cssClass, \DOMNode $node, $logMessage)
    {
        if (false === $detectTitle) {
            return false;
        }
        // check for given css class
        $elems = $this->xpath->query(".//*[contains(concat(' ',normalize-space(@class),' '),' " . $cssClass . " ')]", $node);
        if (false === $this->hasElements($elems)) {
            return $detectTitle;
        }
        $this->title = $elems->item(0)->textContent;
        $this->logger->log('debug', $logMessage, array('title' => $this->title));
        // remove title from document
        $elems->item(0)->parentNode->removeChild($elems->item(0));
        return false;
    }