Using constructors is sort of a bad example of how this anti-pattern emerges, since in PHP like in most languages that support inheritance,
If the child does not define a constructor then it may be inherited from the parent class just like a normal class method ... (from the PHP manual).
If in any of the other 998 classes you are trying to define you purposely do not include a constructor, the base constructor will get called, making it pretty much a requirement to add a constructor on each derived class to avoid this functionality. This is why is not recommend to add logic in a constructor that might alter the state of protected fields/properties or to call virtual methods that might be overridden in derived classes.
However, the anti-pattern actually expresses that:
Note that it is the requirement of calling the parent that is the anti-pattern (from Wikipedia)
So, it is OK to call the base class version of a method as long as it is not required to do so by a derived class. The derived class must behave correctly even though the base method is never called. This will avoid the scenario where a derived class overrides a virtual method but does not implement some special requirement (perhaps because of lack of documentation on the base class), at which point the derived class does not behaves as expected by the system, potentially causing the system to crash or behave unexpectedly, a typical violation of the Liskov substitution principle.
In your particular example this anti-patter does not apply: you're extending constructors, which by definition are required to be called as they instantiate the class into a useful state. And in most instances that's what you want.