public function isPublishable()
    {
        // No source
        if (!$this->CopyContentFrom() || !$this->CopyContentFrom()->ID) {
            return false;
        }

        // Unpublished source
        if (!Versioned::get_versionnumber_by_stage(
            SiteTree::class,
            'Live',
            $this->CopyContentFromID
        )) {
            return false;
        }

        // Default - publishable
        return true;
    }
public function isPublishable()
    {
        // No source
        if (!$this->CopyContentFrom() || !$this->CopyContentFrom()->ID) {
            return false;
        }

        // Unpublished source
        if (!Versioned::get_versionnumber_by_stage(
            SiteTree::class,
            'Live',
            $this->CopyContentFromID
        )) {
            return false;
        }

        // Default - publishable
        return true;
    }
public function isPublishable ( ) { // No source if ( ! $ this -> CopyContentFrom ( ) || ! $ this -> CopyContentFrom ( ) -> ID ) { return false ; } // Unpublished source if ( ! Versioned :: get_versionnumber_by_stage ( SiteTree :: class , 'Live' , $ this -> CopyContentFromID ) ) { return false ; } // Default - publishable return true ; }
Returns true if is page is publishable by anyone at all
Return false if the source page isn't published yet.

Note that isPublishable doesn't affect ete from live, only publish.
Returns true if is page is publishable by anyone at all Return false if the source page isn t published yet .