From John 2:13 through 4:3, Jesus visits Judea. The Gospel writer is pretty clear in purporting this much, at least: Jesus went to the Passover, lingered in the countryside, and returned to Galilee by going through Samaria. Now, it is well known that many critics refute the 'first' temple cleansing of 2:14-21 as unhistorical, as implausible, and/or as theological redaction. Personally, I find two cleansings perfectly plausible, but I'll go with the critics for the sake of this argument. And here is my argument:
The Synoptic cleansing, during the Lord's passion week, can only challenge the historicity of 2:14-21, because the larger passage still attests one lengthy trip to Judea. For a critic, this leaves two ways of dealing with '46 years' at John 2:20.
(1) If the Gospel writer had some literary or theological purpose for purposely relocating the cleansing episode, then the embedded data point about Herod's Temple still belongs to the season of 2:13-4:3, because the statement was located there editorially, and knowingly linked to that particular time in Judea. In such a case, the '46 years' would qualify as John's testimony about when Jesus' ministry should be located in time. (Dating that reference precisely is a whole other issue.)
(2) If the statement in John 2:20 was a historical utterance which actually belonged to some other time (and/or place), the Gospel writer has simply erred - or was attempting to falsify the chronology. In either such case, the embedded data cannot be trusted at all.
Thus, if John's Temple cleansing was relocated deliberately (for theological and/or literary reasons) the chronological data ('46 years') still applies editorially to the season of John 2:13ff. In other words, this datum should only be ignored if we believe the writer was simply mistaken, or if we believe John had chronological axes to grind.
To sum up: the judgment that there was only one Temple cleansing doesn't necessarily affect our use of John 2:20 towards dating the start of Jesus' public ministry.